我绑定在我的ionic2应用程序中使用ionic2,并且我一直得到No provider for AuthConfig!
这是我的app.ts
import {AuthHttp, AuthConfig} from 'angular2-jwt';
import {Http} from 'angular2/http'
@App({
template: '<ion-nav [root]="rootPage"></ion-nav>',
config: {}, // http://ionicframework.com/docs/v2/api/config/Config/
providers: [
provide(AuthHttp, {
useFactory: (http) => {
return new AuthHttp(new AuthConfig(), http);
},
deps: [Http]
}),
AuthHttp
]
})我在我的login.ts页面上使用了这个:
import {AuthHttp, AuthConfig} from 'angular2-jwt';
@Page({
templateUrl: 'build/pages/login/login.html',
directives: [IONIC_DIRECTIVES]
})
export class LoginPage {
constructor(private authHttp: AuthHttp){
}
}发布于 2016-03-19 19:31:53
奇怪的是,您为AuthConfig定义了两倍的提供程序
providers: [
provide(AuthHttp, {
useFactory: (http) => {
return new AuthHttp(new AuthConfig(), http);
},
deps: [Http]
}),
AuthHttp // <-----------
]第二个将覆盖第一个参数,并期望将AuthConfig作为第一个参数注入到AuthHttp中。但是没有AuthConfig的提供者。
它应该通过删除第二个AuthHttp来工作,如下所述:
providers: [
provide(AuthHttp, {
useFactory: (http) => {
return new AuthHttp(new AuthConfig(), http);
},
deps: [Http]
})
]发布于 2016-03-19 17:46:37
尝试将AuthConfig添加为依赖项:
import {AuthHttp, AuthConfig} from 'angular2-jwt';
import {Http} from 'angular2/http'
@App({
template: '<ion-nav [root]="rootPage"></ion-nav>',
config: {}, // http://ionicframework.com/docs/v2/api/config/Config/
providers: [
provide(AuthHttp, {
useFactory: (http) => {
return new AuthHttp(new AuthConfig(), http);
},
deps: [Http,AuthConfig]
}),
AuthHttp
]
})https://stackoverflow.com/questions/36104849
复制相似问题