列表渲染
1. v-for
指令基于一个数组对列表进行渲染
v-for
指令基于一个数组对列表进行渲染
item in items
在items中是原始的数据,而item则是数据中被迭代的数组元素的别名
在v-for
语句中,我们可以访问$data中的所有属性,也就相当于items作用域的属性
2.基于对象进行遍历
同样可以遍历对象中的键名和索引
3.关于v-for
的维护
v-for
的维护 为了让Vue能够跟踪每个节点,就需要为每一项提供一个唯一的key属性,除了那种遍历输出到DOM的操作外,作者都建议提供一个唯一的键
4.数组更新的检测
4.1 原数组发生改变的方法
push() 添加新的元素到数组尾部
pop() 删除数组尾部元素
shift() 删除数组头部元素
unshift() 添加新的元素到数组头部
splice() 用于添加或删除数组中的元素
sort()
reverse()
4.2 不改变原始数组的方法
这样要改变原始数组的话,就只能将得到的数组赋值给原始数组,由于vue考虑到重用性,这种替换的方法还是很高效的。并不一定会丢弃现有的DOM去渲染整个列表
filter()
concat()
slice()
4.3 注意事项
由于javascripte的限制,当对数组做以下的操作时,并不能够响应式的更新DOM
正确的方法
5. 对象变更时注意事项
:warning:对于已经创建的vue实例对象,Vue是不允许添加根级别的响应属性的,但是还是可以使用vue.set()
方法向对象中添加响应式的属性
6.在中使用v-for
与v-if的效果类似,带有v-for
的将会循环的渲染多个元素的内容
不仅可以显示的使用Vue的组件,还可以在标签元素中使用is=组件名
来避开浏览器的解析错误
这里的li标签将会被解析为Vue中注册的组件 todo-item
Last updated