需求分析(长列表展示)

页面某处需要渲染 1w+ 条数据,并需要滚动展示,这时如果直接把这些数据渲染到页面上,会导致系统内存大量被占用,导致页面卡顿或崩溃

我们都知道,每次 DOM 修改,浏览器都会重新计算元素布局,再重新渲染(回流 / 重绘)。如果数据量很大,页面计算时间就会加成,造成页面卡顿

解决方案

  • 根源:DOM 元素太多
  • 思路:限制元素数量 / 虚拟DOM

后台数据格式:

[{checked: 0,data: "xxx",label: "xxx",}
]

Vue 中就有一个现成的轮子可以解决这个问题:vue-virtual-scroller

  1. 安装 vue-virtual-scroller 插件
npm install --save vue-virtual-scroller
  1. main.js 引入
// 注意:别忘了引用这个css
import 'vue-virtual-scroller/dist/vue-virtual-scroller.css'
import Vue from "vue";
import { RecycleScroller } from 'vue-virtual-scroller'Vue.component('RecycleScroller', RecycleScroller)
  1. 在组件里使用

    • items:呈现数据
    • item-size:呈现数据的大小 / 高度
    • key-filed:如果 items 是对象,需要用这个做唯一标识
<RecycleScrollerstyle="height: 200px; overflow: auto"class="scroller":items="listItem":item-size="20"key-field="data"
><template v-slot="{ item }"><el-checkbox :key="item.data" :label="item.label" /></template>
</RecycleScroller><script>
export default {data() {return {listItem: []}}
}
</script>

总结

使用 vue-virtual-scroller 插件展示大量数据,是可以比较流畅的渲染 / 滚动的

Vue 大量数据展示卡顿解决方案(长列表优化)相关推荐

  1. vue渲染大量数据优化_vue大数据表格卡顿问题的完美解决方案

    前言 vue渲染小数据挺快,大数据vue开始出现卡顿现象,本文讲给大家详细介绍关于vue大数据表格卡顿问题的解决方法 亲测苹果电脑,chrome浏览器无卡顿现象,其它浏览器并未测试,如遇到卡顿请备注系 ...

  2. QTableWidget加载大量数据不卡顿

    QTableWidget加载大量数据不卡顿解决办法 原因 解决方案 举例说明 重新鼠标事件 wheelEvent() 实现方法 事件过滤器 eventFilter() 实现方法 实现滑动加载 总结: ...

  3. iOS进阶--提高XCode编译速度、Xcode卡顿解决方案

    提升编译链接的速度主要有以下三个方式: 1. 提高XCode编译时使用的线程数 defaults write com.apple.Xcode PBXNumberOfParallelBuildSubta ...

  4. IntelliJ IDEA 运行卡顿解决方案

    IntelliJ IDEA 运行卡顿解决方案 1.开启IntelliJ IDEA缓慢,想要提升启动速度)则打开D:\JetBrains\IntelliJ IDEA 2020.3.2\bin(依据实际安 ...

  5. 拯救者 显卡混合模式卡顿 解决方案

    拯救者Y9000/Y7000系列 混合模式卡顿解决方案 拯救者显卡混合模式卡顿 解决方案 第一步 BIOS 驱动更新 第二步 卸载联想电脑管家以及应用商城 第三步 下载并安装legion zone 控 ...

  6. 现在梦三国2服务器不稳定,《梦三国2》拒绝卡顿 从自我电脑优化开始

    原标题:<梦三国2>拒绝卡顿 从自我电脑优化开始 游戏卡顿一直是玩竞技游戏时头疼的问题.游戏卡顿也是战力匹配上分时的噩梦.尤其是每天晚上双倍战力时间段,出现卡顿的几率会更高.我们都知道梦三 ...

  7. 【前端性能优化】长列表优化

    1 什么是长列表? 1.1  概念 前端的业务开发中会遇到一些数据量较大且无法使用分页方式来加载的列表,我们一般把这种列表叫做长列表. 1.2 参考案例 比如淘宝网的商品列表页,一个手机屏可以容纳10 ...

  8. vue 界面在苹果手机上滑动点击事件等卡顿解决方案

    用vue编写项目接近尾声,需要集成到移动端中,在webstorm上界面,运行效果都很完美,但是在苹果手机上各种问题都出现了,原生项目一向滑动流畅,事件响应迅速,可是苹果手机打开这个项目有两个问题,(1 ...

  9. echarts大数据多图表绘制卡顿解决方案

    页面卡顿原因: 1.页面绘制的图比较多,每一个图例在没有数据的时候它会创建一个定时器去渲染气泡,页面切换后,echarts图例是销毁了,但是这个echarts的实例还在内存当中,同时它的气泡渲染定时器 ...

  10. 解决ElementUI列表大数据操作卡顿问题

    问题描述 前端UI框架使用的是ElementUI,项目要求数据不分页一个表格至少要1000条数据,这时点击其他DOM操作,会出现卡顿的现象.如点击复选框. 官网的示例也搞了,超过200行后操作就会卡很 ...

最新文章

  1. 怎样合理的将多个字符串拼接为一个字符串
  2. 转:Facebook是如何发布代码的
  3. 【实用】ABAP邮件发送(HTML+Attachment)
  4. 若依前后端分离版本,Windows下使用Nginx代理的方式进行部署(全流程,图文教程)
  5. Sublime Text 3快捷键汇总
  6. [TCP/IP] TCP流和UDP数据报之间的区别
  7. 关于Socket建立长连接遇到的bug信息
  8. 如何使用Play框架为https配置SSL证书
  9. 十二、安装redis3.2
  10. MFC中如何将焦点设置到指定控件上
  11. CCF NOI1074 2的幂次方表示
  12. jquery模拟虚拟键盘带中文拼音输入_线上中文教学,这些设备越早知道越早受益!...
  13. 导致存储过程重新编译的原因
  14. 日志文件管理者:Logrotate
  15. Axure 8.1.0.3388授权码
  16. 关于Arduino下载并添加DHT11库文件的详细教程
  17. 墨珩科技 | 密码行业标准制定的参与者
  18. 【C语言】十进制转换二进制
  19. 文件夹删除不掉-需要管理员权限删除
  20. torch学习 (二十九):周杰伦歌词数据集测试循环神经网络

热门文章

  1. T-SQL简介及基本语法
  2. IOS开发之相机、相册页面英文问题
  3. 什么是跳跃表。跳跃表的原理及其实现。
  4. 【概念】区块链中账本是什么?通用区块链平台账本概念介绍,一个谁都能看懂的账本概念
  5. 微信小程序开发日记1
  6. .db-shm和.db-wal文件
  7. 擦窗机器人毕业设计_家用擦玻璃清洁机器人结构设计毕业设计说明方案.doc
  8. C语言课程设计(服装管理系统详解)
  9. 服务器上qq邮件不能打开方式,QQ邮箱打不开的处理方法
  10. 实现memcmp函数