angular – 如何推迟主要组件的相关组件的初始化,以便可以解决某些承诺

前端之家收集整理的这篇文章主要介绍了angular – 如何推迟主要组件的相关组件的初始化,以便可以解决某些承诺前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在制作angular2应用程序.我最大的问题是无法推迟加载主要组件的依赖子组件,直到某些承诺得到解决.

我有app.component.ts,类名为AppComponent,我在boot.ts中引导,如下所示:

bootstrap(AppComponent,[ROUTER_PROVIDERS,HTTP_PROVIDERS]);

现在我想在导航到我的默认路由之前调用一些非常重要的http服务,即 – ‘/’.一个http服务向我返回数据,该数据将用于执行SEO并在各种路由上设置元数据.

我知道任何类的构造函数最初都被调用,但我不知道构造函数是否等待promises得到解决.

在您的请求完成后,您可以异步引导.这是一个示例:
var app = platform(BROWSER_PROVIDERS)
   .application([BROWSER_APP_PROVIDERS,appProviders]);

var service = app.injector.get(CompaniesService);

service.executeSomething().flatMap((data) => {
  var companiesProvider = new Provider('data',{ useValue: data });
  return app.bootstrap(appComponentType,[ companiesProvider ]);
}).toPromise();

有关详细信息,请参阅此问题:

> angular2 bootstrap with data from ajax call(s)

和相应的plunkr:https://plnkr.co/edit/ooMNzEw2ptWrumwAX5zP?p=preview.

猜你在找的Angularjs相关文章