2016-10-02 65 views
2

在測試版,我可以這樣做:如何使用運行時數據在Angular 2中註冊提供者?

export class AppBootstrapper { 
    constructor(mySettings: AppSettings) { 
    bootstrap(App, 
     [ 
     provide(AppSettings, { 
      useFactory:() => mySettings 
     }) 
     ] 
    } 
    } 
} 

藉助於此「mySettings」是從服務器運行時的數據。

我該如何在最新的RC中做到這一點?

export class AppBootstrapper { 
    constructor(mySettings: AppSettings) { 
    platform.bootstrapModule(AppModule); 
    } 
} 

我能不能把它引導,但不能進入app.module.ts

providers: [ 
    { provide: AppSettings, useFactory: => new AppSettings(??) } 
] 

+0

你可以嘗試像[這](http://stackoverflow.com/a/39454713/2587435) –

回答

3

你可以嘗試以下方法:

export class AppBootstrapper { 
    constructor(mySettings: AppSettings) { 
    browserDynamicPlatform({ provide: AppSettings, useFactory:() => mySettings }) 
     .bootstrapModule(AppModule); 
    } 
} 

或者只是添加在您的app.module.ts文件中的一些方法main將返回您的AppModule並調用這個方法就像

platform.bootstrapModule(main(settings)); 

參見:

相關問題