vue性能优化(续)
v-for、v-if不要一起使用
(老生常谈的东西,主要是有个比较好的图片来解释)
v-for 的优先级其实是比 v-if 高的,所以当两个指令出现来一个DOM中,那么 v-for 渲染的当前列表,每一次都需要进行一次 v-if 的判断。而相应的列表也会重新变化,这个看起来是非常不合理的。因此当你需要进行同步指令的时候。尽量使用计算属性,先将 v-if 不需要的值先过滤掉。他看起像是下面这样的。
// 计算属性
computed: {
filterList: function () {
return this.showData.filter(function (data) {
return data.isShow
})
}
// DOM
- {{ item.name }}
发表评论 (审核通过后显示评论):