按照这里的教程:
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]
})
]
})
这似乎很安静。据我所知,提供商接受一系列提供商。
有没有更简单的方法来重写此代码?
答案 0 :(得分:0)
如果AuthHttp
有一个@Injectable()
装饰器,那么这也可以正常工作
@App({
template: '<ion-nav [root]="rootPage"></ion-nav>',
config: {},
providers: [HTTP_PROVIDERS, AuthConfig, AuthHttp]
})
答案 1 :(得分:0)
我认为您需要提供商提供的AuthConfig
。如果它只是使用没有参数的构造函数,那么Günter的答案正是你要找的!
如果在实例化此类时需要指定参数,可以尝试以下操作:
@App({
template: '<ion-nav [root]="rootPage"></ion-nav>',
config: {},
providers: [
HTTP_PROVIDERS,
provide(AuthConfig, { useValue: new AuthConfig(param1, ...) }),
AuthHttp
]
})