Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angular 未捕获(承诺中):TypeError:无法读取属性';组件';当尝试使用不同参数导航到同一路线时,返回null_Angular_Angular5_Angular Routing - Fatal编程技术网

Angular 未捕获(承诺中):TypeError:无法读取属性';组件';当尝试使用不同参数导航到同一路线时,返回null

Angular 未捕获(承诺中):TypeError:无法读取属性';组件';当尝试使用不同参数导航到同一路线时,返回null,angular,angular5,angular-routing,Angular,Angular5,Angular Routing,我目前正在一个Angular(v5.2.5)项目中工作,我在路由方面遇到了一些问题 以下是我的路线: const routes: Routes =[ { path:'', component: ClassComponent}, { path: 'login', component: LoginComponent}, { path: ':id', component: ClassComponent} ]; 这里有一些链接应该与:id路径匹配: <ul>

我目前正在一个Angular(v5.2.5)项目中工作,我在路由方面遇到了一些问题

以下是我的路线:

const routes: Routes =[
    { path:'', component: ClassComponent},
    { path: 'login', component: LoginComponent},
    { path: ':id', component: ClassComponent}
];
这里有一些链接应该与
:id
路径匹配:

 <ul>
    <li > 
       <a routerLink='/0000'>
          Emilia 
       </a> 
    </li>

    <li > 
        <a routerLink='/1111'>
            Kit
        </a>
    </li>
</ul>

  • 我猜这是因为从路由器的眼睛看,这是同一条路由。您可以做的是,即使我认为这不理想,也可以将
    onSameUrlNavigation
    策略设置为重新加载,但这将适用于所有路线,不仅适用于该路线,因此我非常确定,在您的
    AppModule
    使用中,也必须有另一种解决方案

    imports: [
        BrowserModule,
        RouterModule,
        RouterModule.forRoot( routes, { onSameUrlNavigation: 'reload'} )
    ],
    

    您的方案运行良好。我想你有比我在演示代码中创建的内容更多的东西,你能详细说明一下吗?
    onSameUrlNavigation
    对我来说是新的东西+1直到不起作用,即使这起作用,也不是我们想要的,因为我们不想重新加载页面,否则我们可以使用
    href
    ,使用routerLink的好处是组件不会被破坏。