[angular] ‘tr'(최종 릴리스)의 알려진 속성이 아니기 때문에 ‘ngForOf’에 바인딩 할 수 없습니다.
Angular2 Final 릴리스 (2.1.0)를 사용하고 있습니다. 회사 목록을 표시하고 싶을 때이 오류가 발생했습니다.
에서 file.component.ts
:
public companies: any[] = [
{ "id": 0, "name": "Available" },
{ "id": 1, "name": "Ready" },
{ "id": 2, "name": "Started" }
];
에서 file.component.html
:
<tbody>
<tr *ngFor="let item of companies; let i =index">
<td>{{i}}</td>
<td>{{item.name}}</td>
</tr>
</tbody>
답변
추가 BrowserModule
로 imports: []
에 @NgModule()
이 루트 모듈 (의 경우 AppModule
) 그렇지 않으면를 CommonModule
.
// older Angular versions
// import {BrowserModule, CommonModule} from '@angular/common';
import { BrowserModule } from '@angular/platform-browser'
..
..
@NgModule({
imports: [BrowserModule, /* or CommonModule */],
..
})
답변
제 경우 문제는 팀원 *ngfor
이 *ngFor
. 이 문제를 처리하는 데 올바른 오류가 없다는 점이 이상합니다 (Angular 4에서).
답변
ngFor, ngIf 등과 같은 내장 지시문을 사용하는 모듈에서 ‘CommonModule’을 가져와야합니다.
import { CommonModule } from "@angular/common";
@NgModule({
imports: [
CommonModule
]
})
export class ProductModule { }
답변
기억해야 할 사항 :
사용자 지정 모듈 (AppModule 이외의 모듈)을 사용하는 경우 해당 모듈에서 공통 모듈을 가져와야합니다.
yourmodule.module.ts
import { CommonModule } from '@angular/common';
@NgModule({
imports: [
CommonModule
],
exports:[ ],
declarations: []
})
답변
자체 모듈을 만드는 경우 자체 모듈의 가져 오기에 CommonModule을 추가하십시오.
답변
기능 모듈에서 경로 구성 요소를 선언하지 않은 경우에도 발생할 수 있습니다. 예를 들면 :
feature.routing.module.ts :
...
{
path: '',
component: ViewComponent,
}
...
feature.module.ts :
imports: [ FeatureRoutingModule ],
declarations: [],
ViewComponent는 선언 배열에 없지만 있어야합니다.
답변
맞춤 모듈에는 공통 모듈이 필요합니다.
“@ angular / common”에서 {CommonModule} 가져 오기;
@NgModule ({imports : [CommonModule]})