[angular] 각도 예외 : 알려진 고유 속성이 아니기 때문에 'ngForIn'에 바인딩 할 수 없습니다.


Answers

Angular (> 2.x)를 처음 사용하고 Angular1.x에서 이전 할 가능성이 높으면 혼란 스러울 것 of . 안드레아스 (Andreas)가 아래의 코멘트에서 객체의 values 반복하는 동안 for ... in 객체의 properties 반복하는 for ... in 대해 언급했듯이. 이것은 ES2015에서 소개 된 새로운 기능입니다.

단순히 바꾸기 :

<!-- Iterate over values (correct way to use here) -->
<div *ngFor="let talk of talks">

<!-- Iterate over properties (incorrect in our case here) -->
<div *ngFor="let talk in talks">

따라서 내부 ngFor 지시문으로 ngFor 값을 ngFor 합니다.

Question

내가 도대체 ​​뭘 잘못하고있는 겁니까?

import {bootstrap, Component} from 'angular2/angular2'

@Component({
  selector: 'conf-talks',
  template: `<div *ngFor="let talk in talks">
     {{talk.title}} by {{talk.speaker}}
     <p>{{talk.description}}
   </div>`
})
class ConfTalks {
  talks = [ {title: 't1', speaker: 'Brian', description: 'talk 1'},
            {title: 't2', speaker: 'Julie', description: 'talk 2'}];
}
@Component({
  selector: 'my-app',
  directives: [ConfTalks],
  template: '<conf-talks></conf-talks>'
})
class App {}
bootstrap(App, [])

오류는

EXCEPTION: Template parse errors:
Can't bind to 'ngForIn' since it isn't a known native property
("<div [ERROR ->]*ngFor="let talk in talks">



내 문제는 Visual Studio가 복사 및 붙여 넣기시 * ngFor에 ngFor를 자동으로 소문자로 바꿨다는 것입니다.




내 솔루션은 - 그냥 식에서 '*'문자를 제거 ^ __ ^

<div ngFor="let talk in talks">



Related