Angular 中的 StaticInjectorError(AppModule) 服务 -> InjectionToken 错误
StaticInjectorError(AppModule) Service -> InjectionToken error in Angular
如何解决以下错误
AppComponent.html:9 ERROR Error: StaticInjectorError(AppModule)[OzaAuthService -> InjectionToken oza.config.angular]:
StaticInjectorError(Platform: core)[OzaAuthService -> InjectionToken oza.config.angular]:
NullInjectorError: No provider for InjectionToken oza.config.angular!
AuthService.ts : 在 AuthService 中调用自定义 "oza package"。
import { OzaAuthService } from '@oza/oza-angular';
@Injectable({
providedIn: 'root'
})
export class AuthService {
_accessToken: string;
constructor(private ozaAuthService: OzaAuthService) {
console.log('ozaAuthService');
this.$getAccessToken().subscribe(token => {
this._accessToken = token;
});
}
public getAccessToken(): string {
return this._accessToken;
}
在 App.module.ts 中导入了 oza 包并在提供程序中添加了 OzaAuthService 但仍然出现错误。
import { OzaAuthService} from '@oza/oza-angular';
@NgModule({
declarations: [
AppComponent,
],
imports: [
imports: [
BrowserModule,
NgbModule,
// router
RouterModule.forRoot(routes),
StoreModule.forRoot({}),
})
],
exports: [
HttpClientModule
],
providers: [
**OzaAuthService**
],
schemas: [CUSTOM_ELEMENTS_SCHEMA],
bootstrap: [AppComponent]
})
export class AppModule {}
查看错误,似乎OzaAuthService
需要一个名为oza.config.angular的InjectionToken
来配置服务。您还需要在 AppModule 中提供此 InjectionToken
。请参阅包的文档或尝试在服务的源代码中找到 InjectionToken 的导出名称。
如何解决以下错误
AppComponent.html:9 ERROR Error: StaticInjectorError(AppModule)[OzaAuthService -> InjectionToken oza.config.angular]:
StaticInjectorError(Platform: core)[OzaAuthService -> InjectionToken oza.config.angular]:
NullInjectorError: No provider for InjectionToken oza.config.angular!
AuthService.ts : 在 AuthService 中调用自定义 "oza package"。
import { OzaAuthService } from '@oza/oza-angular';
@Injectable({
providedIn: 'root'
})
export class AuthService {
_accessToken: string;
constructor(private ozaAuthService: OzaAuthService) {
console.log('ozaAuthService');
this.$getAccessToken().subscribe(token => {
this._accessToken = token;
});
}
public getAccessToken(): string {
return this._accessToken;
}
在 App.module.ts 中导入了 oza 包并在提供程序中添加了 OzaAuthService 但仍然出现错误。
import { OzaAuthService} from '@oza/oza-angular';
@NgModule({
declarations: [
AppComponent,
],
imports: [
imports: [
BrowserModule,
NgbModule,
// router
RouterModule.forRoot(routes),
StoreModule.forRoot({}),
})
],
exports: [
HttpClientModule
],
providers: [
**OzaAuthService**
],
schemas: [CUSTOM_ELEMENTS_SCHEMA],
bootstrap: [AppComponent]
})
export class AppModule {}
查看错误,似乎OzaAuthService
需要一个名为oza.config.angular的InjectionToken
来配置服务。您还需要在 AppModule 中提供此 InjectionToken
。请参阅包的文档或尝试在服务的源代码中找到 InjectionToken 的导出名称。