angular报错: Can’t bind to ‘ngIf’ since it isn’t a known property of ‘div’.
component 生成的内容可以直接显示。但是 增加 *ngIf
就会报错。
<p>paper-detail works!</p>
有网友说是没有引入 CommonModule 模块
imports: [ CommonModule ]
我这里的确是引入了 CommonModule 模块的,不是这个问题导致的。
原因: module 的 declarations 数组里未引入 PageListComponent 组件。
$ ng generate component test/pages/page-list
$ ng generate component test/pages/page-detail
$ ng generate module test/pages --module app --flat --routing
今天是新建模块先创建了component,后创建了module,导致 component 未加载在 module 中。
即在 PapersModule 里 declarations: []
没有引入组件。
如果先执行 ng generate module ,后再模块中新增组件,cli 会自动将生产的组件放到 declarations
数组中。
import { NgModule } from '@angular/core';
import { CommonModule } from '@angular/common';
import { PageRoutingModule } from './pages-routing.module';
import { PageListComponent } from './pages/page-list/page-list.component';
import { PageDetailComponent } from './pages/page-detail/page-detail.component';
@NgModule({
declarations: [
PageListComponent, // <-------- 这里需要引入组件
PageDetailComponent, // <-------- 这里需要引入组件
],
imports: [
CommonModule,
FormsModule,
ReactiveFormsModule,
PageRoutingModule,
]
})
export class PapersModule { }
类似问题:Can’t bind to ‘formGroup’ since it isn’t a known property of ‘form’
问题原因:未在 NgModule 模块的 imports 数组配置中引入 ReactiveFormsModule 。
重启 angular 应用:
$ ^C <---- 使用 Ctrl + c 退出
$ ng serve <---- 重新启动
[END]