当前位置: 首页 > news >正文

vue2-v-if和v-for的优先级

vue2-v-if和v-for的优先级

1.v-if和v-for的作用

  • v-if是条件渲染,只有条件表达式true的情况下,才会渲染
  • v-for是基于一个数组来渲染一个列表,在v-for的时候,保证给每个元素添加独一无二的key值,便于diff算法进行优化
<div v-if="ifShow"></div>
<p v-for="item in items" :key="item.id">{{item}}</p>

2. 优先级

  • 优先级是为了讨论先执行v-for还是先执行v-if
  • 那就有两种情况,v-if和v-for在同一个元素上和不同的元素上

2.1 同一个元素上的v-if和 v-for的优先级

<div v-if="isShow" v-for="item in items" :key="item.id">{{ item.name}}</div>
<script>const app=new Vue({el:'#app',data(){return{items:[{id:1,name:'tom'},{id:2,name:'tony'}]}},computed:{ifShow(){return this.items && this.items.length>0}}})
</script>
  • 这种情况下v-for的优先级高于v-if,也就是先执行v-for,在执行v-if.这种情况下就会造成性能的浪费

2.1 不同标签上的v-if和v-for

<div v-if="ifShow"><p  v-for="item in items" :key="item.id">{{ item.name}}</p>
</div>
  • 这种情况下v-if优先级高于v-for

3. 总结

  • 在VUE2中,当v-if和v-for同时出现时,v-for的优先级更高
  • 所以最好不要同时出现
  • 但在VUE3中,当v-if和v-for同时出现时,v-if的优先级更高
http://www.lryc.cn/news/532258.html

相关文章:

  • C++六大默认成员函数
  • 基于springboot校园点歌系统
  • pycharm 中的 Mark Directory As 的作用是什么?
  • 【Elasticsearch】文本分类聚合Categorize Text Aggregation
  • 算法随笔_40: 爬楼梯
  • 【Linux探索学习】第二十七弹——信号(一):Linux 信号基础详解
  • 【数学】矩阵、向量(内含矩阵乘法C++)
  • 设置git区分大小写
  • 排序算法与查找算法
  • Github 2025-01-31Java开源项目日报 Top10
  • Java进阶笔记(中级)
  • 2025游戏行业的趋势预测
  • 4-ET框架demo的运行
  • kamailio源文件modules.lst的内容解释
  • 亚远景-从SPICE到ASPICE:汽车软件开发的标准化演进
  • vue3 + ElementPlus 封装列表表格组件包含分页
  • 挑战项目 --- 微服务编程测评系统(在线OJ系统)
  • Med-R2:基于循证医学的检索推理框架:提升大语言模型医疗问答能力的新方法
  • Oh3.2项目升级到Oh5.0(鸿蒙Next)具体踩坑记录(一)
  • 【自动化办公】批量图片PDF自定义指定多个区域识别重命名,批量识别铁路货物运单区域内容改名,基于WPF和飞桨ocr深度学习模型的解决方案
  • Spring Boot篇
  • Unity3D学习笔记(二)
  • 个人毕业设计--基于HarmonyOS的旅行助手APP的设计与实现(挖坑)
  • 游戏引擎 Unity - Unity 打开项目、Unity Editor 添加简体中文语言包模块、Unity 项目设置为简体中文
  • python开发:爬虫示例——GET和POST请求处理
  • 开源数据分析工具 RapidMiner
  • Vue canvas画图画线例子,数据回显与隔离,点拖拽修改
  • Python实现CAN FD 通信(基于PCAN开发CAN FD测试工具)
  • LeetCode--347. 前 K 个高频元素/Golang中的堆(container/heap)
  • 关于大数据