router.navigateByUrl()导致导航根目录并重新加载,angular 2.4.7 navigateByUrl使导航成为根目录并重新加载

router.navigateByUrl()导致导航根目录并重新加载,angular 2.4.7 navigateByUrl使导航成为根目录并重新加载,angular,angular2-routing,angular-cli,Angular,Angular2 Routing,Angular Cli,当我使用router.navigate()或navigateByUrl()时,我会得到一个重载-a 呼叫根目录。Chrome开发工具控制台显示 导航到http://localhost/ 通过与的链接导航 https://github.com/michaelkariv/angular_router_demo 由ng serve使用生产环境提供服务 serve--主机localhost--端口80--实时重新加载false-prod 我做错了什么?我没有看到你的代码,所以这只是一个猜测

当我使用router.navigate()或navigateByUrl()时,我会得到一个重载-a 呼叫根目录。Chrome开发工具控制台显示

导航到http://localhost/

通过与的链接导航


https://github.com/michaelkariv/angular_router_demo

由ng serve使用生产环境提供服务

serve--主机localhost--端口80--实时重新加载false-prod


我做错了什么?我没有看到你的代码,所以这只是一个猜测,但我认为你在app.component.html中错过了路由器出口



根据您的代码将上述代码添加到您的app.component.html文件末尾

,当锚定单击时,它将触发浏览器的默认导航

<a href="" (click)="goToTest11()"> router.navigateByUrl('../test1/test11')</a>

要修复该问题,请使用event.preventDefault()



很抱歉,我稍后会检查并让您知道,但目前我对路由器太厌倦了,所以我转移到了ionic framework,而不是香草angular2+引导。Ionic框架模仿移动导航,并将路由器封装在自己的实现中。这种实现更容易处理。无论如何,我都在尝试制作一款手机应用的网络版,所以爱奥尼亚是最自然的方式。对于所有的观众来说,这是最新的更新。到目前为止,angular已升级到第4版。所以可能(我没有检查)问题消失了。我不知道。我把这个项目搁置了。现在我要重新打开它。我决定从angular 2和up+引导转移到ionic 2框架。Ionic框架模仿移动导航,并将路由器封装在自己的实现中。这种实现更容易处理。我一直在尝试制作一款网络版的手机应用程序,所以爱奥尼亚是最自然的方式。所以我的需要这个问题现在是没有意义的。
<a href="" (click)="$event.preventDefault();goToTest11();"> router.navigateByUrl('../test1/test11')</a>