当我使用router.navigate()或navigateByUrl()时,我得到一个重载 - 一个
打电话给根。 Chrome Dev工具控制台显示
Navigated to http://localhost/
通过链接导航
<a [routerLink]=
工作正常。
this.router.navigateByUrl('/test1/test11');
angular-cli: 1.0.0-beta.28.3
node: 7.5.0
os: win32 x64
@angular/common: 2.4.7
@angular/compiler: 2.4.7
@angular/core: 2.4.7
@angular/forms: 2.4.7
@angular/http: 2.4.7
@angular/platform-browser: 2.4.7
@angular/platform-browser-dynamic: 2.4.7
@angular/router: 3.4.7
@angular/compiler-cli: 2.4.7
发布到GitHub,published to GitHub
https://github.com/michaelkariv/angular_router_demo
serve --host localhost --port 80 --live-reload false -prod
答案 0 :(得分:0)
我还没有看到你的代码,所以这只是一个猜测,但我认为你错过了app.component.html中的路由器插座
<div>
<router-outlet></router-outlet>
</div>
将上述代码添加到最后的app.component.html文件中
答案 1 :(得分:0)
根据您的代码,当点击锚点时,它将触发浏览器的默认导航
<a href="" (click)="goToTest11()"> router.navigateByUrl('../test1/test11')</a>
修复使用event.preventDefault()
<a href="" (click)="$event.preventDefault();goToTest11();"> router.navigateByUrl('../test1/test11')</a>