【发布时间】:2016-05-17 07:44:54
【问题描述】:
使用已弃用的路由器时,我能够执行 router.config 并传入一个对象。问题是,路由器本身在应用程序启动后进行了一些配置,该对象具有相同的“模板”,就好像我使用了@RouterConfig 一样。我正在寻找的是是否有办法像这样配置新路由器。一直在查看文档,但我有点不知所措,因为它还没有记录。
因回答而编辑
不,我不能使用@Routes。事情是我在构建路由器后加载配置。以下是我如何使用旧路由器的片段:
myLoader.loadComponentConfig(configPath)
.then(components => { self.Components = components;
components.map(comp => {
self.RouterComponents.push(
{
path: '/' + comp.name,
component: comp,
as: comp.name
}
)});
router.config(self.RouterComponents);
});
如您所见,我正在为自己构建一个 json 对象 (RouterComponents),然后将其发送到路由器。我正在寻找一种方法来对新路由器或类似的东西做同样的事情。
【问题讨论】:
-
我也面临着类似的障碍。我们创建了一个返回路由配置的服务。我可以使用 ngFor 对从服务接收到的数据编写 routeLink。但是我们不能在 @Routes 装饰器中使用服务。通过文档我们没有找到路由器中的任何配置方法。
-
@Siraj 你可以试试ngrx路由器或使用已弃用的路由器。