我在Angular 2路线中遇到一个奇怪的问题,我只能路由到下一页但无法从该页面路由。
我有4个组件:主页,搜索结果,个人资料和管理员。
当我第一次到达Home组件时,我可以导航到搜索结果,但是从搜索结果中我无法导航到除Home组件之外的任何地方。
主页组件和应用程序顶部栏包含相同的逻辑(相同的代码),并且顶栏逻辑在导航时适用于所有页面。即,当我从任何页面导航到顶部栏按钮的搜索结果页面时,我能够导航到下一页和任何其他页面。
我的路线:
{path: '', component: HomeComponent},
{path: 'seachresult', component: SearchResultComponent},
{path: ':code', component: ProfileComponent},
{path: 'admin/account', component: AdminComponent}
在上面的HomeComponent中,我尝试了以下内容:
{path:'home',component:HomeComponent},
{path:'',redirectTo:'home',pathMatch:'full'},{path:'home', component:HomeComponent},
以上都不能解决问题。
点击搜索按钮时,会执行以下代码:
this.router.navigate(['vendors', 'pokhara']);
以下是package.json中的版本:
答案 0 :(得分:0)
希望您可能已经解决了这个问题,但是, 如果您无法使用router.navigate进行路由,为什么不使用路由器链接或routeBy Url 在.ts
中import { Router } from '@angular/router';
....
constructor(private router : Router){}
...
functionClick(){
this.router.navigateByUrl('/code'); // or any path
}
或直接在html中使用
<span routerLink="/code"></span>