v-for 比 v-if 优先级高,如果每一次都需要遍历整个数组,将会影响速度,尤其是当之需要渲染很小一部分的时候,必要情况下应该替换成 computed 属性。
推荐写法:
<ul>
<li
v-for="(item,index) in userList"
:key="item.id">
{{ item.name }}
</li>
</ul>
computed: {
userList: function () {
return this.item.filter(function (item) {
return item.isActive
})
}
}
不推荐写法:
<ul>
<li
v-for="(item,index) in userList"
v-if="item.isActive"
:key="item.id">
{{ item.name }}
</li>
</ul>