没有AuthHttp的提供者! Angular2-Jwt提供商问题
发布时间:2020-12-17 17:36:19 所属栏目:安全 来源:网络整理
导读:至少我以为我提供的正确.以下是我的app.module文件的相关片段以及我使用AuthHttp的服务.我按照自述文件中的配置创建了提供AuthHttp的工厂方法,但是在我的服务中无法识别它存在持续存在的问题.我已经阅读了有关嵌套依赖注入的文献,我觉得我正在做正确的事情.
至少我以为我提供的正确.以下是我的app.module文件的相关片段以及我使用AuthHttp的服务.我按照自述文件中的配置创建了提供AuthHttp的工厂方法,但是在我的服务中无法识别它存在持续存在的问题.我已经阅读了有关嵌套依赖注入的文献,我觉得我正在做正确的事情.
app.module.ts import { Http,RequestOptions } from '@angular/http'; import { provideAuth,AuthHttp,AuthConfig } from 'angular2-jwt/angular2-jwt'; export function authHttpServiceFactory(http: Http,options: RequestOptions) { return new AuthHttp(new AuthConfig(),http,options); } @NgModule({ declarations: [ AppComponent,ButtonFormComponent,... imports: [ BrowserModule,FormsModule,HttpModule,RouterModule,AppRoutingModule ],providers: [ { provide: LocationStrategy,useClass: HashLocationStrategy },{ provide: AuthHttp,useFactory: authHttpServiceFactory,deps: [Http,RequestOptions] }, employee.service.ts import { AuthHttp } from 'angular2-jwt/angular2-jwt'; import { Observable } from 'rxjs/Observable'; import 'rxjs/add/operator/catch'; import 'rxjs/add/operator/map'; import 'rxjs/add/observable/throw'; import { ApiSettings } from './api-settings'; @Injectable() export class EmployeeService { api: String; auth: String; constructor(private http: Http,private authHttp: AuthHttp) { this.api = ApiSettings.API; this.auth = ApiSettings.Auth; } 解决方法
您可以通过在app.module.ts中使用以下导入来解决此问题,此处的密钥导入是AUTH_PROVIDERS.
此外,请确保在providers数组中包含AUTH_PROVIDERS. import { AuthHttp,AUTH_PROVIDERS,provideAuth,AuthConfig } from 'angular2-jwt/angular2-jwt'; @NgModule({ providers: [AUTH_PROVIDERS] }) (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容