vxe-table制作高亮刷新功能

news2024/11/17 7:19:33

start

记录一下 vxe-table 实现表格新增数据背景闪烁功能。

1. 效果

2. demo代码

<template>
  <div id="app">
    <div @click="tomato">点我新增数据 lazy_tomato</div>
    <vxe-grid ref='xTable' :height="height" :columns="columns" :data="data" :scroll-y="{ enabled: true }"
      :row-class-name="getRowClassName" :row-config="{ keyField: 'id', useKey: true }">
    </vxe-grid>
  </div>
</template>

<script>
export default {
  data () {
    let that = this
    return {
      border: true,
      height: 500,
      columns: [
        { type: 'seq', width: 50 },
        { field: 'name', title: 'Name' },
        { field: 'sex', title: 'Sex', showHeaderOverflow: true },
        { field: 'address', title: 'Address', showOverflow: true },
      ],
      data: [],
      rowClassName ({ row }) {
        let index = that.list.indexOf(row.id)
        if (index !== -1) {
          return 'animating'
        }
        return ''
      },
      list: []
    }
  },
  mounted () {
    const list = []
    for (let index = 0; index < 700; index++) {
      list.push({
        name: `名称${index}`,
        id: index,
        nickname: 'T1',
        role: 'Develop',
        sex: 'Man',
        age: 0,
        address: 'Shenzhen',
      })
    }
    this.data = list
  },
  methods: {
    getRowClassName ({ row, rowIndex }) {

      let a = row.isAnimating ? 'animating' : '';

      if (rowIndex === 0) {
        a = a + ' ' + new Date().getTime()
      }
      return a
    },
    tomato () {
      let length = 2
      console.log(length)
      let a = new Date().getTime()
      let newRows = []
      for (let index = 0; index < length; index++) {
        newRows.push({ // 你的数据结构
          id: a + 'tomato' + index,
          name: '随机数据' + a + index,
          // 添加动画标识
          isAnimating: true
        })
      }


      this.data.unshift(...newRows);

      // 遍历每条新数据,设置定时器移除动画标识
      setTimeout(() => {
        newRows.forEach((row, index) => {
          row.isAnimating = false;
        });

        newRows = null
      }, 2000);  // 动画时间为2秒,设置适合的间隔


    }
  }
}
</script>
<style>
@keyframes fadeToWhiteRGBA {
  0% {
    background-color: pink;
  }

  /* 接近白色的淡蓝色 */
  100% {
    background-color: #fff;
  }

  /* 白色 */
}

.animating {
  animation: fadeToWhiteRGBA 2s linear;
}
</style>

3.难点说明

3.1 动画实现

最简单的还是使用css的animation属性,实现动画效果即可,当元素加载时会播放动画。在vue等框架中,组件更新也会重新渲染dom更新动画。

3.2 vxe-table首行不更新动画

在我自己实现功能的时候,发现首行的样式不会更新,排查了一下原因,可能是和 vue的diff算法有关,需要给虚拟节点 vnode增加一个key,标志组件唯一即可。(加上如下配置)

:row-config="{ keyField: 'id', useKey: true }"

3.3 vue-table 虚拟滚动失效

在使用vue-table的时候,发现虚拟滚动失效了,后面发现这几个原因,记录一下

  1. 要设置高度或最大高度。
  2. 是否开启了虚拟滚动
  3. 如何和树状效果一起使用,tree-config:{},不能等于空对象。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2171519.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

原文翻译:Make Skeleton-based Action Recognition Model Smaller, Faster and Better

全网没找到一个完整的翻译&#xff0c;用chatgpt翻译如下&#xff0c;可能有的地方不够准确&#xff0c;推荐结合原文对照着看更。 摘要 尽管基于骨架的动作识别在近年来取得了巨大的成功&#xff0c;但大多数现有方法可能面临模型规模庞大和执行速度缓慢的问题。为了解决这个…

Apifox 9月更新|「动态值」全新升级、跨团队引用接口和测试场景、测试报告交互优化

Apifox 新版本上线啦&#xff01;&#xff01;&#xff01; 看看本次版本更新主要涵盖的重点内容&#xff0c;有没有你所关注的功能特性&#xff1a; 「动态值」全新升级 更强大、更灵活的数据模拟能力 支持智能代码补全动态值 测试报告交互优化 支持跨团队引用接口和测试场…

LLM大模型学习:开源大模型技术路线及趋势

MLNLP社区是国内外知名的机器学习与自然语言处理社区&#xff0c;受众覆盖国内外NLP硕博生、高校老师以及企业研究人员。 社区的愿景是促进国内外自然语言处理&#xff0c;机器学习学术界、产业界和广大爱好者之间的交流和进步&#xff0c;特别是初学者同学们的进步。 转载自…

数电基础(组合逻辑电路+Proteus)

1.组合逻辑电路 1.1组合逻辑电路的分析 1.1.1组合逻辑电路的定义 组合逻辑电路的定义 &#xff08;1&#xff09;对于一个逻辑电路&#xff0c;其输出状态在任何时刻只取决于同一时刻的输入状态&#xff0c;而与电路的原来状态无关&#xff0c;这种电路被定义为组合逻辑电路…

MySQL 之索引详解

想象一下&#xff0c;你正在图书馆寻找一本关于 MySQL 索引的书。图书馆里有成千上万本书&#xff0c;但没有目录。你只能一排一排、一本一本地找&#xff0c;直到找到你想要的书。这将会花费大量的时间&#xff01;数据库索引就像图书馆的目录一样&#xff0c;可以帮助数据库系…

什么是智享AI直播(三代)?一文带你全面解析!

什么是智享AI直播&#xff08;三代&#xff09;&#xff1f;一文带你全面解析&#xff01; 在当今这个数字化飞速发展的时代&#xff0c;技术的每一次革新都深刻地改变着我们的生活与工作方式。随着人工智能&#xff08;AI&#xff09;技术的不断成熟与普及&#xff0c;智享AI…

【mysql】千万级数据MySQL索引优化实例

【mysql】千万级数据MySQL索引优化实例 【一】场景描述【二】生成数千万条记录【三】原始sql分析【四】第一次优化&#xff1a;常规索引【五】第二次优化&#xff1a;覆盖索引【六】第三次优化&#xff1a;减少数据量【七】第四次优化&#xff1a;小表驱动大表【八】第五次优化…

蓝桥杯模块二:数码管的静态、动态实现

模块二训练 1.静态显示 一、数码管电路图 二、电路分析 1.数码管电路分析 端口分公共端和段码&#xff0c;先用公共端控制一个数码管&#xff0c;再用段码实现显示数字。共阳数码管公共端输入高电平&#xff0c;段码输入低电平实现点亮 2.锁存器 Y7控制段码&#xff0c;Y6控…

机器学习学习笔记-20240927

文章目录 一些简单的指令数据操作广播机制 标量&#xff0c;向量&#xff0c;矩阵的相互求导1. 标量对标量的求导2. 标量对向量的求导3. 向量对标量的求导4. 向量对向量的求导5. 矩阵对标量的求导6. 矩阵对向量的求导 链式求导法则YYDS求出损失函数偏导为0时的最优解w*1. 损失函…

卷轴模式商城APP开发指南

卷轴模式商城APP的开发是一项融合了技术创新、用户体验优化与商业策略实施的综合性工程。本文将从程序员的角度出发&#xff0c;详细介绍该类型应用的开发流程&#xff0c;涵盖从需求分析到后期维护的各个环节。 一、需求分析 首先&#xff0c;明确APP的核心功能需求&#xff…

从0-1搭建海外社媒矩阵,详细方案深度拆解

做买卖&#xff0c;好的产品质量固然是关键&#xff0c;但如何让更多的消费者知道&#xff1f;营销推广是必不可少的。在互联网时代&#xff0c;通过社交媒体推广已经成为跨境电商卖家常用的广告手段。 如何通过海外社交媒体矩阵扩大品牌影响力&#xff0c;实现营销目标&#…

又一篇Nature!可解释GNN今年持续发力,创新思路有时候就这么简单!

最近发现了一篇优秀的Nature子刊论文&#xff0c;作者提出了一种基于可解释GNN癌症基因分析新框架&#xff0c;在预测任务中实现了卓越的性能表现。 除此之外&#xff0c;还出现了很多可解释GNN的新研究&#xff0c;其中顶会不少&#xff0c;可见无论在学术界和工业界&#xf…

AES CCM详解

AES CCM是一种对数据进行加密及完整性检查的算法&#xff0c;主要用到AES中的CBC(完整性检查)和CTR(对明文进行加密)&#xff0c;除此之外&#xff0c;还涉及到对数据的格式化(本文着重阐述)。 文章目录 加密过程STEPS 解密及校验过程STEPS 格式化B0的构成B0解析举例AAD的格式化…

企业微信扫码登录

请求url 可以看到如下结果&#xff1a; 请求的URL是 reqauth.aspx&#xff0c;这是发起认证的第一步&#xff0c;这个请求的返回结果是一个 XML 数据&#xff0c;包含一个 ReqID&#xff0c;用户授权的地址 AuthUrl 以及查询结果的地址 ResultUrl。 如果直接访问这个地址&…

sysctl 命令:Linux内核参数管理

一、命令简介 ​sysctl​是一个用于查看、设置和管理内核参数的命令行工具。 ‍ 二、命令参数 sysctl [选项] [内核参数]选项: ​-a​, --all​: 显示所有参数及其当前值。​-n​: 仅显示值&#xff0c;不显示参数名。​-w​: 设置参数的值。 ‍ 三、命令示例 查看所有…

理解:基础地理实体相关概述

理解&#xff1a;基础地理实体相关概述 地理实体 geo-entity 现实世界中占据一定且连续空间位置和范围、单独具有同一属 性或完整功能的地理对象。 基础地理实体 fundamental geo-entity 通过基础测绘采集和表达的地理实体&#xff0c;是其他地理实体和相关 信息的定位框架与…

Spring Security 是一个强大的和高度可定制的身份验证和访问控制框架。它是 Spring 项目家族的一员,用于构建安全的 Java 应用程序。

Spring Security 是一个强大的和高度可定制的身份验证和访问控制框架。它是 Spring 项目家族的一员&#xff0c;用于构建安全的 Java 应用程序。Spring Security 提供了全面的安全服务&#xff0c;从基本的登录认证到复杂的访问控制&#xff0c;几乎涵盖了所有与安全相关的需求…

线程与线程安全,生产消费者模型

线程与进程 2390. 从字符串中移除星号 给你一个包含若干星号 * 的字符串 s 。 在一步操作中&#xff0c;你可以&#xff1a; 选中 s 中的一个星号。移除星号 左侧 最近的那个 非星号 字符&#xff0c;并移除该星号自身。 返回移除 所有 星号之后的字符串**。** 注意&#xff1a…

ubuntu 设置静态IP

一、 ip addresssudo nano /etc/netplan/50-cloud-init.yaml 修改前&#xff1a; 修改后&#xff1a; # This file is generated from information provided by the datasource. Changes # to it will not persist across an instance reboot. To disable cloud-inits # ne…

深度解析与解决方案:U盘有盘符但无法打开的困境

引言&#xff1a;U盘困境初现 在日常工作与生活中&#xff0c;U盘作为便携式存储设备&#xff0c;扮演着数据传输与备份的重要角色。然而&#xff0c;不少用户会遇到这样一个棘手问题&#xff1a;U盘在插入电脑后能够正常显示盘符&#xff0c;但尝试打开时却遭遇拒绝访问或提示…