v-for和v-if为什么不能连用

  • Post author:
  • Post category:其他


看了好几个前辈的回答,最后自己总结了一下,不到位的欢迎指正。

答:由于v-for的优先级比v-if高,这就说明在v-for的每次循环运行中每一次都会调用v-if的判断,而v-if是通过创建和销毁dom元素来控制元素的显示与隐藏,所以就会不停的去创建和销毁元素,造成页面卡顿,性能下降。

解决办法:

法1: 在v-for的外层或内层包裹一个元素来使用v-if(嵌套使用)

法2: 可以使用过滤器将v-if中的判断转移到vue的computed的计算属性中



版权声明:本文为weixin_47240319原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。