Angular 2 - 组件引导后的事件

时间:2016-04-22 06:59:40

标签: service angular global

我遇到了问题。我想要一个全球服务。我发现了这个:Link。 它工作但我想在初始化我的组件后 在我的组件被引导后调用的事件。

有人知道这个事件吗?

Lyror

更新

是的,我想这样做:

import {GlobalService} from './GlobalService';
import {Component, provide, Injector, ComponentRef} from 'angular2/core';
import {bootstrap}        from 'angular2/platform/browser';
import {HTTP_PROVIDERS} from 'angular2/http';
import {appInjector} from './app.injector';
import {RouteConfig, ROUTER_DIRECTIVES, ROUTER_PROVIDERS,
    LocationStrategy, HashLocationStrategy} from 'angular2/router';
import {AppComponent}     from './app.component';

bootstrap(AppComponent, [
    ROUTER_PROVIDERS,
    provide(LocationStrategy, { useClass: HashLocationStrategy }),
    HTTP_PROVIDERS,
    GlobalService
]).then((appRef: ComponentRef) => {

    var injector = appInjector(appRef.injector);
    var appComp: AppComponent = injector.get(AppComponent);

    appComp.init();
});

但我得到两个错误:

  

未处理的Promise拒绝:appComp.init不是一个函数;区域:;任务:Promise.then;值:TypeError:appComp.init不是函数

     

错误:未捕获(在承诺中):TypeError:appComp.init不是函数

1 个答案:

答案 0 :(得分:0)

bootstrap函数返回一个promise。在引导组件时调用此级别提供的回调:

bootstrap(AppComponent).then((compRef:ComponentRef) => {
  // Do something after the component is bootstrapped
  var comp = compRef.instance;
  comp.init();
});