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

建设行业的门户网站除了dz论坛还能搭建什么网站

建设行业的门户网站,除了dz论坛还能搭建什么网站,平定住房建设局网站,手游推广平台代理概要 在vue项目中,有时候需要渲染大量的动态列,在我的项目中当我的列达到150个以上时,出现了列错乱问题,以下是我的示例截图 查看官网渲染大数据时使用虚拟滚动 横向虚拟滚动 通过 scroll-x.enabled 与 scroll-x.gt 组合开启&a…

概要

在vue项目中,有时候需要渲染大量的动态列,在我的项目中当我的列达到150个以上时,出现了列错乱问题,以下是我的示例截图
在这里插入图片描述
查看官网渲染大数据时使用虚拟滚动

横向虚拟滚动
通过 scroll-x.enabled 与 scroll-x.gt 组合开启,其中 enabled 为总开关,gt 是指当总列数大于指定列数时自动开启。
理论上限:横向平均上限支持 8w 列(最大上限 20w 列)。当 gt 为 0 时为总是启用。
性能优化:横向虚拟滚动列宽越宽越流畅,列宽设置 column.width | column.min-width
小提示
启用横向虚拟滚动,建议开启 show-header-overflow 和 show-footer-overflow 获得最高渲染性能

按照官网设置之后,数据量大时依旧错乱,升级版本等各种方法使用之后还是不行

解决方案

requestAnimationFrame
requestAnimationFrame是浏览器用于定时循环操作的一个接口,类似于setTimeout,主要用途是按帧对网页进行重绘,让各种网页动画效果(DOM动画、Canvas动画、SVG动画、WebGL动画)能够有一个统一的刷新机制,从而节省系统资源,提高系统性能,改善视觉效果。

在运行过程中,window.requestAnimationFrame() 告诉浏览器——你希望执行一个动画,并且要求浏览器在下次重绘之前调用指定的回调函数更新动画。该方法需要传入一个回调函数作为参数,该回调函数会在浏览器下一次重绘之前执行

这个是在之前做动画的时候用过,抱着试试的心态,我修改了一下我的代码发现可以!
在这里插入图片描述

小结

当使用vxe-table 遇到大数据渲染错乱时,其他方案都不行时,可以试一下requestAnimationFrame

源码

<template><div class="app-container"><a-space style="margin-bottom: 10px"><a-range-picker v-model:value="dates" /><a-button type="primary" @click="onSearch">查询</a-button></a-space><vxe-table:data="tableData":height="800"v-loading="loading"bordershow-overflowshow-header-overflowshow-footer-overflow:scroll-x="{ enabled: true, gt: 0 }"><vxe-columntitle="名称"field="name"width="100"fixed="left"></vxe-column><vxe-columntitle="编码"field="code"width="100"fixed="left"></vxe-column><vxe-columntitle="数量"field="count"width="100"fixed="left"></vxe-column><vxe-columnv-for="item in columns":key="item.field":field="item.field":title="item.title":min-width="item.minWidth"></vxe-column></vxe-table></div>
</template>
<script setup>
import dayjs from 'dayjs'const dates = ref([])
const tableData = ref([])
const loading = ref(false)
const columns = ref([])const onSearch = () => {loading.value = truesetTimeout(() => {requestAnimationFrame(() => {columns.value = getColums()})tableData.value = getData()loading.value = false}, 1000)
}const getColums = () => {if (!dates || dates.value.length === 0) {return []}const [start, end] = dates.valueconst diff = dayjs(end).diff(dayjs(start), 'day')const columns = []for (let i = 0; i <= diff; i++) {const date = dayjs(start).add(i, 'day').format('YYYY-MM-DD')columns.push({field: date,title: date,minWidth: 100})}return columns
}const getData = () => {const columns = getColums()if (!columns || columns.length === 0) {return []}const data = []for (let i = 0; i < 100; i++) {const row = {name: `name${i}`,code: `code${i}`,count: i}for (const col of columns) {row[col.field] = Math.floor(Math.random() * 100)}data.push(row)}return data
}
</script><style scoped lang="scss">
.app-container {padding: 10px;
}
</style>
http://www.dtcms.com/wzjs/587596.html

相关文章:

  • 漳州 网站建设公司wordpress 手动缩略图
  • 网站备案ip查询网站查询百度联盟广告点击技巧
  • 先看网站案例您的网站也可以这么做电子商务网站进度的基本流程
  • 服装网站建设公司有哪些企业外包
  • 德阳网站开发熊掌号wordpress集成erphpdown
  • 北京住房建设部官方网站科技网站域名
  • 网站开发项目swot分析艺术毕业设计作品网站
  • 福州网站建设求职简历asp.net+mvc+网站开发
  • 一般网站建设的流程如何制作小程序图片
  • 自己怎么做视频网站品牌设计策划
  • 招商网站福州 网站定制设计
  • 做视频网站成本高吗个人简历word可编辑免费
  • 慧聪网官方网站网站备案号去哪查询
  • 南昌城乡住房建设厅网站急切网在线制作
  • 手机做网站哪家好烟台网站建设yt
  • 专业免费网站建设西安做网站陕西必达
  • 咸阳学校网站建设公司二维码图片生成器在线制作
  • 用wordpress建仿站百度网盟推广官方网站
  • 网站建设未来wordpress导航页面模板下载地址
  • 门户网站都有哪些项目计划书团队介绍
  • 安徽美丽乡村建设网站WordPress虚拟主机插件
  • 音乐网站用什么语言做杭州网站建设设计制作
  • 网站营销推广方案哪些网站可以做宣传
  • wordpress福利整站源码用户体验好的网站
  • 湖北网站建设专家开发设计公司网站
  • 沈阳模板网站制作平房装修设计图片大全 效果图
  • 北京做网站的公司哪家好wordpress教程 好看
  • 一个做品牌零食特卖的网站北京医疗机构网站前置审批需要的材料有哪些
  • 响应式品牌网站设计hao123浏览器
  • 永州网站建设公司网站轮播广告动画怎么做