チェックボックスを動的に作成する必要があります。* ngForを使用してオブジェクトの配列を繰り返し処理しています。ラベルタグにfor
属性の値を設定すると問題が発生します。角度は、エラーをスローしていますテンプレート:'for'は既知のネイティブプロパティではないため、バインドできませんangular2
は、それが知られているネイティブのプロパティangular2ないので
「の」新しいエラーメッセージ
未処理の約束拒否にバインドできません解析エラー: 'ラベル'の既知のプロパティではないため、 'for'にバインドできません。ここ
<div *ngFor="#batch of batch_array">
<label for="{{batch.id}}"><input type="checkbox" [value]="batch.id" id="{{batch.id}}"
(click)="batchSelectedEevent(batch.id)" /> {{batch.batch_name}}
</label>
</div>
エラーを示す私のplnkrです:http://plnkr.co/edit/aAQfWvHc7h7IBuYzpItO?p=preview
いただきました!ここで間違って私のコードでは? Angular2最終[for]="xxx"
で
をワウ、それは罰金おかげで動作します!単に 'for'の代わりに' attr.for'で 'attr'を使う理由を知っていますか? –
'attr.for'では、属性バインディングが高価であるため、属性バインディングを明示的にオプトインする必要があります。属性はDOMに反映され、変更には、たとえば、この属性セットと一致するCSSセレクタが登録されているかどうかを確認する必要があります。プロパティのバインディングはJSのみで安価なので、デフォルトです。 –
"プロパティのバインディングはJSのみです"。私はそれほど言いません。例えば、頻繁に使用される 'textContent'プロパティなど、対応する属性を持たないプロパティがいくつかあります。これらのプロパティにバインドすると、DOMが更新されます。 –