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

v-if和v-for连用出现的问题

解决方案有两个可以根据具体情况而定

1.当控制v-if的元素不存在v-for中 , 可以使用template包裹住对应的v-for , 也可以使用父级元素添加v-if , 可以不加载从而优化性能

添加一个template

<div>
    <template v-if="showActive">
        <div v-for"item in list" :key="item.id">{{item.value}}</div>
    </template>
    <div class="bottom"/>
</div>

添加到父级

<ul v-if="showActive">
   <li v-for="item in list" :key="item.id">{{item.value}}</li>
</ul>

2.如果v-if 控制的元素存在v-for中 , 可以通过使用计算器属性来回避 , 比如使用计算器属性在页面加载之前进行一边过滤

computed: {
    loadList() {
       const { list } = this
       return list.filter(item => item.value)
    }
}


问题的实质是因为在vue中会优先执行v-for, 当v-for把所有内容全部遍历之后 , v-if再对已经遍历的元素进行删除 , 造成了加载的浪费 , 所以应该在执行v-for之前优先执行v-if , 可以减少加载的压力

相关文章:

  • 导入javax.servlet。伺服登记无法解决:The import javax.servlet.MultipartConfigElement cannot be resolved...
  • 与柯尼塞格达成合作后 恒大或将继续瞄准中高端新能源车
  • eclipse 插件编写(一)(转)
  • 深入浅出Tomcat/3 - Tomcat生命周期
  • mybatis 学习总结笔记Day2
  • 5.3Python函数(三)
  • 基于LSTM的情感识别在鹅漫评论分析中的实践与应用
  • Docker学习笔记_安装和使用nginx
  • React Transition Group -- Transition 组件
  • 开源项目之ASP.NET Core + Vue.js 的前后端分离的通用后台管理系统框架
  • 客户端链接Blog
  • [IOI2018] werewolf 狼人
  • Docker学习笔记_安装和使用Python
  • JS正则表达式详解
  • ActiveMQ (一):安装启动及测试
  • 【面试系列】之二:关于js原型
  • 2017 年终总结 —— 在路上
  • Java IO学习笔记一
  • Js基础知识(一) - 变量
  • laravel 用artisan创建自己的模板
  • nfs客户端进程变D,延伸linux的lock
  • 关于List、List?、ListObject的区别
  • 机器学习 vs. 深度学习
  • 开放才能进步!Angular和Wijmo一起走过的日子
  • 老板让我十分钟上手nx-admin
  • 数组大概知多少
  • 与 ConTeXt MkIV 官方文档的接驳
  • 3月27日云栖精选夜读 | 从 “城市大脑”实践,瞭望未来城市源起 ...
  • elasticsearch-head插件安装
  • 微龛半导体获数千万Pre-A轮融资,投资方为国中创投 ...
  • 移动端高清、多屏适配方案
  • ​linux启动进程的方式
  • # C++之functional库用法整理
  • (+4)2.2UML建模图
  • (14)学习笔记:动手深度学习(Pytorch神经网络基础)
  • (ros//EnvironmentVariables)ros环境变量
  • (TipsTricks)用客户端模板精简JavaScript代码
  • (八)Flask之app.route装饰器函数的参数
  • (附源码)ssm学生管理系统 毕业设计 141543
  • (转)机器学习的数学基础(1)--Dirichlet分布
  • (转)自己动手搭建Nginx+memcache+xdebug+php运行环境绿色版 For windows版
  • .net core 6 集成和使用 mongodb
  • .net mvc 获取url中controller和action
  • .Net 访问电子邮箱-LumiSoft.Net,好用
  • .NET 使用 ILMerge 合并多个程序集,避免引入额外的依赖
  • .net6解除文件上传限制。Multipart body length limit 16384 exceeded
  • .Net7 环境安装配置
  • .NET微信公众号开发-2.0创建自定义菜单
  • .net项目IIS、VS 附加进程调试
  • /etc/fstab 只读无法修改的解决办法
  • :not(:first-child)和:not(:last-child)的用法
  • [ C++ ] STL---仿函数与priority_queue
  • [ IOS ] iOS-控制器View的创建和生命周期
  • [ vulhub漏洞复现篇 ] Apache Flink目录遍历(CVE-2020-17519)
  • [Android] 修改设备访问权限