项目名:mlogin
知识点:
1、在循环遍历的时候,尽量不要让id是一个静态的定值;
2、有一些变量我们不能用ng-model或mg-bind绑定,这个时候{{}}的好处就显现出来了,可以直接赋值;
在做公司项目时,遇到一个问题一直解决不了,整了整整一天时间。现在终于解决了,发布出来以免以后忘记。
其中,ng-repeat的那个tr显示出来是一行行词的详情,每个tr最后是修改按钮,点击修改弹出第二个form表单,现在需要在点击不同行的详情时,上面'修改’对话框显示的也是该词的详情。
问题一:
在form表单的tr标签中,嵌套了另一个form表单,在第二个标签中我需要使用第一个表单中ng_repeat出来的car属性,但是试了好几次发现循环出来的第二层表单一直只取第一次循环的值,一开始我以为是因为car这个属性不能够传递到第二个表单里。
但后来我发现,每次更改第二个表单里面的值,不论改变的是第几次循环出来的第二个表单,结果都只更改第一个表单,然后我才意识到可能是因为配置信息中的id不是唯一的的原因。
解决方法:
将$index绑定到第二个form表单中,不要使用固定的id,但这里遇到第二个问题;
问题二:
我想给id绑定$index值,id="$index" 并不生效,ng-bind="$index" id="$index" 也不生效、
解决方法:
使用id="{{$index}}"就可以给id绑定变量了。
注意:
1、如果要用$index,必须使用track by $index
2、$index用做class或id时,需要加上{{}},如果用在ng-if上,则不需要
3、$index可以使用加减乘除,如下如
4、除此以外,在循环列表时,奇偶数行数可以使用$even和$odd,详情请见https://blog.csdn.net/weixin_39845746/article/details/80137908