【发布时间】:2018-12-18 01:30:09
【问题描述】:
我已经搜索了很多有关此错误的信息,但没有任何用处,这种错误通常会告诉您缺少提供程序的对象是什么,但是这次它给出的是 StaticInjectorError(AppModule)[[object Object ]],所以我想不通。
在我的应用程序中,我有单独的模块:
- 应用模块
- 费用模块
- 账户模块
他们每个人都有一个路由模块 事实上,我正在使用延迟加载来跨模块路由。 account-routing-module 包含:
const routes: Routes = [
{
path: '',
component: AccountsComponent,
canActivate: [AuthGuardService],
resolve: {
data:{
AccountsResolver
}
}
}
];
@NgModule({
imports: [RouterModule.forChild(routes)],
exports: [RouterModule],
providers: [
AccountsResolver
]
})
export class AccountsRoutingModule {
}
当我访问accountscomponent时,出现如下错误:
ERROR Error: Uncaught (in promise): Error: StaticInjectorError(AppModule)[[object Object]]:
StaticInjectorError(Platform: core)[[object Object]]:
NullInjectorError: No provider for [object Object]!
Error: StaticInjectorError(AppModule)[[object Object]]:
StaticInjectorError(Platform: core)[[object Object]]:
NullInjectorError: No provider for [object Object]!
at NullInjector.push../node_modules/@angular/core/fesm5/core.js.NullInjector.get (vendor.js:53611)
at resolveToken (vendor.js:53850)
at tryResolveToken (vendor.js:53795)
at StaticInjector.push../node_modules/@angular/core/fesm5/core.js.StaticInjector.get (vendor.js:53690)
at resolveToken (vendor.js:53850)
at tryResolveToken (vendor.js:53795)
at StaticInjector.push../node_modules/@angular/core/fesm5/core.js.StaticInjector.get (vendor.js:53690)
at resolveNgModuleDep (vendor.js:60745)
at NgModuleRef_.push../node_modules/@angular/core/fesm5/core.js.NgModuleRef_.get (vendor.js:61433)
at resolveNgModuleDep (vendor.js:60745)
at NullInjector.push../node_modules/@angular/core/fesm5/core.js.NullInjector.get (vendor.js:53611)
at resolveToken (vendor.js:53850)
at tryResolveToken (vendor.js:53795)
at StaticInjector.push../node_modules/@angular/core/fesm5/core.js.StaticInjector.get (vendor.js:53690)
at resolveToken (vendor.js:53850)
at tryResolveToken (vendor.js:53795)
at StaticInjector.push../node_modules/@angular/core/fesm5/core.js.StaticInjector.get (vendor.js:53690)
at resolveNgModuleDep (vendor.js:60745)
at NgModuleRef_.push../node_modules/@angular/core/fesm5/core.js.NgModuleRef_.get (vendor.js:61433)
at resolveNgModuleDep (vendor.js:60745)
at resolvePromise (polyfills.js:3136)
at resolvePromise (polyfills.js:3093)
at polyfills.js:3195
at ZoneDelegate.push../node_modules/zone.js/dist/zone.js.ZoneDelegate.invokeTask (polyfills.js:2743)
at Object.onInvokeTask (vendor.js:56325)
at ZoneDelegate.push../node_modules/zone.js/dist/zone.js.ZoneDelegate.invokeTask (polyfills.js:2742)
at Zone.push../node_modules/zone.js/dist/zone.js.Zone.runTask (polyfills.js:2510)
at drainMicroTaskQueue (polyfills.js:2917)
defaultErrorLogger @ vendor.js:54201
但是当我在解析中注释掉 AccountsResolver 时,组件正常加载而没有任何错误。 我不知道错误是因为实现了 Resolve 的 AccountsResolver 还是因为其他原因。任何想法将不胜感激。谢谢。
【问题讨论】:
标签: angular6