Angular2 gotchas: Double binding within Form

Version: Angular2 RC4 RC5;

Problem: Double binding with <form> willnot work if you do not have a unique name property. For example, you have anngFor to display all the element as a <input> inside a <form> withdouble binding, all <input> elements will have the same value.

Demo:  Plunker link


Reason is all the input elements have the same nameproperty,<input [(ngModel)]="hero.name"placeholder="name" name="name">


Solution 1: You can simply delete <form>


Solution 2: One-way binding instead of double binding

<input value={{hero.name}} placeholder="name" name="name">

Solution 3: Double binding with unique name property,try it onPlunker

<div><label>id:</label>{{hero.id}}</div>
<div*ngFor="let hero of heroes; let idx=index">
<span style="white-space:pre">	</span><label>name:</label>
<span style="white-space:pre">	</span><input[(ngModel)]="hero.name" placeholder="name" name="name_{{idx}}">
</div>


 



  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值