Angular2 RC1 - 加载数据后的加载路径(路由器出口)

时间:2016-06-08 22:01:58

标签: javascript angular angular2-routing

我在 Angular2 RC1 中使用新路由器(不是路由器弃用)。我需要能够在应用程序继续加载之前加载JSON配置文件。我使用Config类来获取我的JSON配置,但问题是,我不想在我的配置完成加载之前加载路由器插座。

我尝试用<router-outlet>包裹*ngIf,但却遇到了这个问题:https://github.com/angular/angular/issues/8539

我也尝试按照此article扩展<router-outlet>,但没有运气(不能与RC1合作)

Angular1有办法重新加载&#34;路线,但这似乎不存在于NG2中。

我该怎么做?如何在加载应用程序后加载我的JSON配置文件,并在配置完成后呈现应用程序?有没有其他人成功地做到了这一点?

2 个答案:

答案 0 :(得分:0)

在新路由器中>= RC.3https://angular.io/docs/ts/latest/api/router/index/Router-interface.html#!#resetConfig-anchor resetConfig可以使用

router.resetConfig([
 { path: 'team/:id', component: TeamCmp, children: [
   { path: 'simple', component: SimpleCmp },
   { path: 'user/:name', component: UserCmp }
 ] }
]);

对于您的情况,我会使用一些虚拟路由和虚拟组件初始化路由器,然后在您的JSON可用后加载新路由并导航到新的默认路由。

https://github.com/angular/angular/issues/11437#issuecomment-245995186提供 RC.6 Plunker

答案 1 :(得分:-1)

如何考虑加载页面?这样,如果您的数据尚未完全加载,则会显示加载页面而不是您的路线。

有关如何在Angular2中实现加载屏幕的建议,请参阅this question

<强>更新

另一方面,我发现我们可以使用路线解析器预加载数据。我还在学习它,this angular documentation可能有所帮助。