我必须动态创建一个复选框列表,所以我使用*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"应该可以正常工作.他们来自添加的别名for来htmlFor.
原版的
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)
| 归档时间: |
|
| 查看次数: |
9267 次 |
| 最近记录: |