【发布时间】:2017-03-16 07:38:04
【问题描述】:
当我尝试通过 JSON 管道传输数据时,控制台中出现以下错误:
Unhandled Promise rejection: Template parse errors:
The pipe 'json' could not be found (...
我做错了什么?
【问题讨论】:
标签: json angular typescript
当我尝试通过 JSON 管道传输数据时,控制台中出现以下错误:
Unhandled Promise rejection: Template parse errors:
The pipe 'json' could not be found (...
我做错了什么?
【问题讨论】:
标签: json angular typescript
您很可能忘记导入 CommonModule:
import { CommonModule } from '@angular/common';
@NgModule({
...
imports: [ CommonModule ]
...
})
如 cmets 中所述,请在您使用 json 管道的模块中执行此操作。
【讨论】:
在我的例子中添加了CommonModule,但该组件不是任何模块声明的一部分
(我正在使用ContainerRef动态创建组件)
【讨论】:
你的组件的父模块应该是这样的。
import {NgModule} from '@angular/core';
import {AuditTrailFilterComponent} from './components/audit-trail-filter/audit-trail-filter.component';
import {CommonModule} from '@angular/common'; <-- This is important !!!!
@NgModule({
imports: [
CommonModule, <-- This is important !!!!
],
declarations: [AuditTrailFilterComponent],
exports: [
AuditTrailFilterComponent
]
})
export class AuditTrailModule {
}
【讨论】:
如果您在 Lazy module 中声明您的组件并尝试将该组件添加到未导致该模块被加载的路由,也会发生这种情况。
例如。我刚刚遇到了这个错误:
children: [
{
path: 'editor',
loadChildren: () => from(import(/* webpackChunkName: "editor" */ '../editor/editor.module').then(m => m.EditorModule))
},
{
path: 'multi-preview',
component: MultiPreviewerComponent // declared in Editor.module (lazy loaded)
}
]
【讨论】: