簡體   English   中英

在angular2中注入提供者

[英]Injecting providers in angular2

在此遵循本教程:

https://auth0.com/blog/2016/02/18/ionic-2-authentication-how-to-secure-your-mobile-app-with-jwt/

AuthHttp作為提供程序注入的方式是:

@App({
  template: '<ion-nav [root]="rootPage"></ion-nav>',
  config: {},
  providers: [
    provide(AuthHttp, {
      useFactory: (http) => {
        return new AuthHttp(new AuthConfig, http);
      },
      deps: [Http]
    })
  ]
})

這似乎很安靜。 據我了解,提供程序接受一系列提供程序。

有沒有更簡單的方法來重寫此代碼?

如果AuthHttp具有@Injectable()裝飾器,則它也應該工作

@App({
  template: '<ion-nav [root]="rootPage"></ion-nav>',
  config: {},
  providers: [HTTP_PROVIDERS, AuthConfig, AuthHttp]
})

我認為您需要提供者提供的AuthConfig 如果只使用不帶參數的構造函數,那么根特的答案就是您要尋找的!

如果在實例化此類時需要指定參數,則可以嘗試以下操作:

@App({
  template: '<ion-nav [root]="rootPage"></ion-nav>',
  config: {},
  providers: [
    HTTP_PROVIDERS,
    provide(AuthConfig, { useValue: new AuthConfig(param1, ...) }),
    AuthHttp
  ]
})

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM