注意到新版本候选 (RC) 路由器在@Routes装饰器中不包含"name"参数。但是,angular.io 上的文档在描述带有 RC 路由器的路由时明确提到了"名称"。这只是文档的复制/粘贴问题,还是有意将"名称"参数重新添加到组合中?
如果"名称"参数永远消失了,原因是什么,是否有任何文档可以澄清已弃用的路由器和 RC 路由器之间的区别?
(RC) 路由器示例:
@Routes([
{path: '/crisis-center', component: CrisisListComponent},
{path: '/heroes', component: HeroListComponent},
{path: '/hero/:id', component: HeroDetailComponent}
])
(已弃用)路由器
@RouteConfig([
{path: '/crisis-center', name: 'CrisisCenter', component: CrisisListComponent},
{path: '/heroes', name: 'Heroes', component: HeroListComponent},
{path: '/hero/:id', name: 'HeroDetail', component: HeroDetailComponent}
])
链接到提到 RC 路由器中仍然存在的"名称"参数的新文档:
https://angular.io/docs/ts/latest/guide/router.html
name
参数永远消失了。原因是路由和路由组件的延迟加载。在路由器弃用中,这会导致问题,因为需要加载路由才能知道名称。现在仅支持路径进行导航,在路径指向尚未加载的路由之前,无需加载路由和组件。
- Angular 2.0 中的路由
- 路由器链接提案
- 可能还有设计:代码延迟加载