无法绑定到'for',因为它不是已知的本机属性angular2

Par*_*ain 20 angular

我必须动态创建一个复选框列表,所以我使用*ngFor来迭代对象数组,一切正常,直到迭代.当我for在label标签中设置属性值时出现问题.angular已抛出错误:

无法绑定到'for',因为它不是已知的本机属性angular2

新的错误消息

未处理的Promise拒绝:模板解析错误:无法绑定到'for',因为它不是'label'的已知属性.

<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>
Run Code Online (Sandbox Code Playgroud)

这是我的plnkr显示错误:http://plnkr.co/edit/aAQfWvHc7h7IBuYzpItO?p = preview

我的代码中有什么问题?

Gün*_*uer 25

更新

在Angular2中,final [for]="xxx"应该可以正常工作.他们来自添加的别名forhtmlFor.

原版的

Angular默认使用属性绑定但label没有属性for.要明确告诉Angular使用属性绑定,请改用:

[attr.for]="someField"
Run Code Online (Sandbox Code Playgroud)

要么

attr.for="{{someField}}"
Run Code Online (Sandbox Code Playgroud)

代替.

这些也有效,因为htmlFor属性for被反映到了.

[htmlFor]="someField"
htmlFor="{{someField}}"
Run Code Online (Sandbox Code Playgroud)

在Angular2 RC.6中添加了一个别名,所以现在这些别名也可以正常工作:

[for]="someField" 
Run Code Online (Sandbox Code Playgroud)

要么

for="{{someField}}" 
Run Code Online (Sandbox Code Playgroud)