Angular2:配置 'name' 与现有路由 'name' 冲突
Angular2: Configuration 'name' conflicts with existing route 'name'
我有一些组件,其中一个带有动态路由。
动态路由添加为,
let config = [];
for(let i = 0; i < this.pages.length; i++) {
config.push({
path: this.pages[i].slug,
name : this.pages[i].name,
component: AnotherComponent,
});
}
router.config(config);
每当加载动态路由的组件不止一次时,都会重新配置路由,导致配置冲突。
这是 plunk,动态路由加载了 link users
,离开用户后再次点击 users
记录下面显示的错误控制台。
我该如何解决?感谢您对此进行调查。
添加前检查路由是否存在
for(let i = 0; i < this.pages.length; i++) {
if(!router.registry.hasRoute(this.pages[i].name, UsersComponent)) {
config.push({
path: this.pages[i].slug,
name : this.pages[i].name,
component: PersonComponent,
data : {
name : this.pages[i].name,
slug : this.pages[i].slug
}
});
}
}
我有一些组件,其中一个带有动态路由。
动态路由添加为,
let config = [];
for(let i = 0; i < this.pages.length; i++) {
config.push({
path: this.pages[i].slug,
name : this.pages[i].name,
component: AnotherComponent,
});
}
router.config(config);
每当加载动态路由的组件不止一次时,都会重新配置路由,导致配置冲突。
这是 plunk,动态路由加载了 link users
,离开用户后再次点击 users
记录下面显示的错误控制台。
我该如何解决?感谢您对此进行调查。
添加前检查路由是否存在
for(let i = 0; i < this.pages.length; i++) {
if(!router.registry.hasRoute(this.pages[i].name, UsersComponent)) {
config.push({
path: this.pages[i].slug,
name : this.pages[i].name,
component: PersonComponent,
data : {
name : this.pages[i].name,
slug : this.pages[i].slug
}
});
}
}