vue3实现虚拟滚动Vue-Virtual-Scroller

前端优化不可不避的一谈之虚拟滚动:众所周知,滚动是直挺挺的往dom树加东西,如果滚太多滚到万级,渲染过多就会卡顿,而vue-virtual-scroll的灵活懒渲染就能解决这个问题

1,下载与配置

复制代码
npm install --save vue-virtual-scroller@next

2,main.ts中配置导入

复制代码
import VueVirtualScroller from 'vue-virtual-scroller'
import 'vue-virtual-scroller/dist/vue-virtual-scroller.css'

app.use(VueVirtualScroller)

3,使用如下:

Arr是自定义的比如一个对象数组,至少含有id,min-item-size是最小的高度默认px单位,key-field会读取posts中的id,列表的长度由posts长度决定,行内style的两个样式是必须有的,高度代表视窗高度,然后设置overscroll-scroll才能滚动,其他属性就没必要管了,不用去看官方又臭又长的文档

复制代码
<template>
    <DynamicScroller
         :style="'overflow':'scroll', 'height':'400px'"
        :items="Arr"
        :min-item-size="100"
        key-field="id"
    >
        <template #default="{ item, index, active }">
            <DynamicScrollerItem
                :item="item"
                :active="active"
                :data-index="index"
            >
                // 这里放置需要循环的代码
            </DynamicScrollerItem>
        </template>
    </DynamicScroller>
</template>
相关推荐
kyriewen21 小时前
写组件文档写到吐?我用AI自动生成Storybook,同事以后直接抄
前端·javascript·面试
五点六六六1 天前
你敢信这是非Native页面写出来的渐变效果吗🌝(底层原理解析
前端·javascript·面试
吃西瓜的年年1 天前
TypeScript
javascript·ubuntu·typescript
独泪了无痕1 天前
CryptoJS:数据安全的JavaScript加密利器
前端·vue.js·node.js
熊猫_豆豆1 天前
一个模拟四轴飞行器在随机气流扰动下悬停飞行的交互式3D仿真网页,包含飞行器建模与PID控制算法
javascript·3d·html·四轴无人机模拟飞行
来恩10031 天前
jQuery选择器
前端·javascript·jquery
前端繁华如梦1 天前
树上挂苹果还是挂玻璃球?Three.js 程序化果实的完整实现指南
前端·javascript
CDwenhuohuo1 天前
优惠券组件直接用 uview plus
前端·javascript·vue.js
川冰ICE1 天前
TypeScript装饰器与元编程实战
前端·javascript·typescript
AI砖家1 天前
Vue3组件传参大全,各种传参方式的对比
前端·javascript·vue.js