dataV组件使用——数据更新更新组件
bug 当数据更新只更新一个属性页面不会刷新(this.config1.data = arr;)
必须重新赋值整个config
方式一:检测到数据更新重新赋值config
this.config1 = {data: arr,header: ["所在单位", "人员姓名", "职位", "联系方式", "人员状态"],align: ["center", "center", "center", "center", "center"],columnWidth: [150],rowNum: 7,evenRowBGC: "rgba(33, 78, 133,.5)",oddRowBGC: "transparent",headerBGC: "",waitTime: 1000,headerHeight: "45",};
方式二:同理使用es6语法
this.config1.data = arr;
this.config1={...this.config1}
<template><dv-scroll-board:config="type == 1 ? config1 : type == 2 ? config2 : type == 3 ? config3 : config4"ref="scrollBoard"class="w100 h100"/>
</template>
<script>
export default {props: ["list", "type"],watch: {list: {handler(val) {// console.log("watch监听", val, this.type, 777777);if (val) {if (this.type == 1) {let arr = val.map((el) => {return [el.deptName,el.personName,el.postName,el.phoneNumber,`<span class="${el.memberTypeName == "在岗"? "green1": el.memberTypeName == "培训" || el.memberTypeName == "出差"? "red1": el.memberTypeName == "休假" || el.memberTypeName == "轮休"? "yellow1": "blue1"}">${el.memberTypeName}</span>`,];});// ☆☆☆☆☆ bug 当数据更新只更新一个属性页面不会刷新(this.config1.data = arr;)// 必须重新赋值整个config/*** 方式一 :* this.config1.data = arr;* this.config1={...this.config1}*//*** 方式二 : 如下重新写一遍*//*** 方式三: 直接在html中绑定对象就会监听到*/this.config1 = {data: arr,header: ["所在单位", "人员姓名", "职位", "联系方式", "人员状态"],align: ["center", "center", "center", "center", "center"],columnWidth: [150],rowNum: 7,evenRowBGC: "rgba(33, 78, 133,.5)",oddRowBGC: "transparent",headerBGC: "",waitTime: 1000,headerHeight: "45",};// console.log("config1", arr, this.config1);// this.$refs["scrollBoard"].updateRows(arr, 0);} else if (this.type == 2) {let arr = val.map((el) => {return [el.deptName,el.carName,el.carTypeName,el.carNumber,`<span class="${el.carStatusName == "正常"? "green1": el.carStatusName == "维修"? "red1": "blue1"}">${el.carStatusName}</span>`,];});// this.config2.data = arr;this.config2 = {data: arr,header: ["所在单位","车辆名称","车辆属性","车牌号","车辆状态",],align: ["center", "center", "center", "center", "center"],columnWidth: [150],rowNum: 7,evenRowBGC: "rgba(33, 78, 133,.5)",oddRowBGC: "transparent",headerBGC: "",waitTime: 1000,headerHeight: "45",};// console.log("config2", arr, this.config2);// this.$refs["scrollBoard"].updateRows(arr, 0);} else if (this.type == 3) {let arr = val.map((el) => {return [el.dutyTypeName,el.userName,el.workPhoneNumber,el.mobilePhoneNumber,el.virtualNumber,];});// this.config2.data = arr;this.config3 = {data: arr,header: ["值班类型", "姓名", "工作电话", "联系电话", "虚拟号"],align: ["center", "center", "center", "center", "center"],columnWidth: [100, , , ,],rowNum: 4,evenRowBGC: "rgba(33, 78, 133,.5)",oddRowBGC: "transparent",headerBGC: "",waitTime: 1000,headerHeight: "35",};// console.log("config3", arr, this.config3);// this.$refs["scrollBoard"].updateRows(arr, 0);} else if (this.type == 4) {let arr = val.map((el) => {return [el.dutyDeptName, el.userName, el.mobilePhoneNumber];});// this.config2.data = arr;this.config4 = {data: arr,header: ["值班类型", "值班人员", "联系电话"],align: ["center", "center", "center"],columnWidth: [150, 150, ,],rowNum: 7,evenRowBGC: "rgba(33, 78, 133,.5)",oddRowBGC: "transparent",headerBGC: "",waitTime: 3000,headerHeight: "45",};// console.log("config3", arr, this.config3);// this.$refs["scrollBoard"].updateRows(arr, 0);}}},// 这里是关键,代表递归监听的变化deep: true,// immediate: true,},},data() {return {config1: {header: ["所在单位", "人员姓名", "职位", "联系方式", "人员状态"],data: [],align: ["center", "center", "center", "center", "center"],columnWidth: [150],rowNum: 7,evenRowBGC: "rgba(33, 78, 133,.5)",oddRowBGC: "transparent",headerBGC: "",waitTime: 1000,headerHeight: "45",},config2: {header: ["所在单位", "车辆名称", "车辆属性", "车牌号", "车辆状态"],data: [],align: ["center", "center", "center", "center", "center"],columnWidth: [150],rowNum: 7,evenRowBGC: "rgba(33, 78, 133,.5)",oddRowBGC: "transparent",headerBGC: "",waitTime: 1000,headerHeight: "45",},config3: {header: ["值班类型", "姓名", "工作电话", "联系电话", "虚拟号"],data: [],align: ["center", "center", "center", "center", "center"],// columnWidth: [150],rowNum: 4,evenRowBGC: "rgba(33, 78, 133,.5)",oddRowBGC: "transparent",headerBGC: "",waitTime: 1000,headerHeight: "35",},config4: {header: ["值班类型", "值班人员", "联系电话"],data: [],align: ["center", "center", "center"],// columnWidth: [150],rowNum: 7,evenRowBGC: "rgba(33, 78, 133,.5)",oddRowBGC: "transparent",headerBGC: "",waitTime: 1000,headerHeight: "35",},};},mounted() {},// 销毁定时器beforeDestroy() {},methods: {},
};
</script>
<style lang="scss" scoped>
@import "../components/css/rem.scss";::v-deep.dv-scroll-board .header .header-item {// color: #f39800;// color: cyan;color: #6fddc2;font-weight: 700;
}::v-deep.dv-scroll-board.solo .rows {border: 1px solid rgba(0, 238, 255, 0.123);
}::v-deep.dv-scroll-board .green1,
::v-deep.dv-scroll-board .red1,
::v-deep.dv-scroll-board .yellow1,
::v-deep.dv-scroll-board .blue1 {padding: 4px 10px;border-radius: 4px;font-size: 12px;
}::v-deep.dv-scroll-board .green1 {border: 1px solid cyan;background: rgba(0, 255, 255, 0.2);
}::v-deep.dv-scroll-board .red1 {border: 1px solid rgb(250, 13, 84);background: rgba(250, 13, 84, 0.2);
}::v-deep.dv-scroll-board .blue1 {border: 1px solid rgb(0, 89, 255);background: rgba(0, 89, 255, 0.2);
}::v-deep.dv-scroll-board .yellow1 {border: 1px solid rgb(250, 213, 2);background: rgba(250, 213, 2, 0.2);
}
</style>
方法三:直接在html中绑定对象,数据变化会自动更新页面
<dv-water-level-pond style="width: 0.65rem; height: 0.65rem":config="{data: [res.currentLevel],waveNum: 1,waveHeight: 10,waveOpacity: 0.5,shape: 'round',colors: ['#fff', '#ff3300']}"
/>
相关文章:

dataV组件使用——数据更新更新组件
bug 当数据更新只更新一个属性页面不会刷新(this.config1.data arr;) 必须重新赋值整个config 方式一:检测到数据更新重新赋值config this.config1 {data: arr,header: ["所在单位", "人员姓名", "职位", &q…...
solana合约编写
文章目录 solana 合约编写整体思路Cargo.toml配置代码实现在 Solana 智能合约中,定义和管理可能的错误类型自定义一个 Solana 账户结构一个帐户的约束条件什么是bump账号获取指令参数编码基础常用总结format! 格式化字符串Option<String>Vec<u8>编译部署到localne…...

C++调用C#方法(附踩坑点)
C调用C#方法 写在前面效果思路步骤可能的问题 写在后面 写在前面 工作需要用C调用C#写到代码,看来网上写的方法,自己也踩了一些坑,这里总结一下,我只试了CLR的方法。 主要参考了下面几篇博客 C调用C#库简单例程(Lucky…...

开源前端埋点监控插件Web-Tracing
Web-Tracing是一款专为前端项目设计的前端监控插件,它基于JavaScript设计,兼容跨平台使用,并提供了全方位的监控功能。 开源地址:https://gitee.com/junluoyu/web-tracing-analysis 以下是关于Web-Tracing的详细介绍:…...

智慧排水远程监测系统物联网解决方案
智慧排水监测系统是一种集成了现代信息技术、物联网技术、大数据分析及云计算能力的高效城市排水管理解决方案。该系统通过全面、实时地监控城市排水网络的运行状态,旨在预防内涝灾害,优化水资源管理,保障城市安全运行,促进可持续…...
【SVN(Subversion)是一个版本控制系统】
Question SVN所有命令 Answer SVN(Subversion)是一个版本控制系统,用于管理和跟踪文件和目录的更改。以下是一些常用的SVN命令: 检出(Checkout) svn checkout URL从版本库中检出一个工作副本。 更新&am…...

leetcode108.把升序数组转换成二叉搜索树
题目描述 [-10,-3,0,5,9] 转换成如下二叉搜索树: 解题的核心原理是:二叉搜索树的中序遍历结果是一个升序数组,所以根节点的数值,也位于数组的中部。 class Solution {public TreeNode sortedArrayToBST(int[] nums) {return h…...

用QTdesigner制作自己的双目标定软件
目录 1,设计布局软件界面 2,导出界面ui文件为python的.py文件 3,为界面添加对应的功能 4,导出为exe可执行文件 5,运行测试效果 5.1 双击启动 5.2 添加必要的参数 5.3 ,运行结果 效果展示 动手制作双…...
MySQL:基础巩固-DDL
一、对数据库的操作 1.查询所有数据库 SHOW DATABASES;2. 查询当前使用的数据库 SELECT DATABASE();3. 创建数据库 CREATE DATABASE IF NOT EXISTS test DEFAULT CHARSET utf8mb4 COLLATE utf8mb4_general_ci;4. 删除数据库 DROP DATABASE IF EXISTS test;5. 使用数据库 …...
翻译软件在医学中的应用
翻译软件在医学中的应用非常广泛,主要体现在以下几个方面: 患者沟通:翻译软件可以帮助医务人员与非母语患者进行有效沟通,确保患者能够准确表达自己的症状和需求,也使医生能够清晰地解释治疗方案和用药说明。这对提升…...

政务大数据解决方案(六)
政务大数据解决方案通过建立综合数据平台,将来自各政府部门的异构数据整合并进行深入分析,利用人工智能和机器学习技术实现智能化数据处理与预测,从而提升政府决策的科学性和实时响应能力。方案涵盖数据采集、存储、处理、分析与可视化&#…...
【MATLAB机器人系统工具箱】【manipulatorRRT规划器】属性和方法解析
启用了连接启发式(heuristic)后,双向快速扩展随机树(RRT)算法会在以下情况下忽略 MAXCONNECTIONDISTANCE 的限制:当两棵树(起始树和目标树)之间的节点距离足够接近时,算法…...
MySQL 多表连接(JOIN)
在数据库开发中,多表连接(JOIN)是一个非常重要的技术,它使得我们可以在查询中整合多个表的数据,进而实现更加复杂的数据操作。本文将深入探讨 MySQL 中的多表连接,帮助读者全面理解 JOIN 的基本概念、类型和…...

Opencv学习-直方图比较
由于图像的直方图表示图像像素灰度值的统计特性,因此可以通过两幅图像的直方图特性比较 两幅图像的相似程度。从一定程度上来讲,虽然两幅图像的直方图分布相似不代表两幅图像相似,但是两幅图像相似则两幅图像的直方图分布一定相似。例如&…...
一文入门:正则表达式基础
正则表达式简介 正则表达式(Regular Expression,简称regex或RE)是一种用于匹配字符串中字符组合的模式。它广泛应用于编程语言、文本编辑器和各种工具中,用于执行复杂的字符串搜索和替换任务。 为什么使用正则表达式?…...
深入理解 `@DateTimeFormat` 和 `@JsonFormat` 注解
前言 在Java应用程序中,处理日期和时间是一个常见的需求。无论是从数据库读取还是通过API接收数据,正确的日期和时间格式都是确保应用正确运作的关键因素。本文将深入探讨两个常用的注解——DateTimeFormat和JsonFormat——以及它们如何帮助我们在Sprin…...

微服务架构设计中的常见的10种设计模式
微服务架构设计的概念 微服务架构(Microservices Architecture)是一种用于构建分布式系统的软件设计模式。它将大型应用程序拆分成一组小型、自治的服务,每个服务都运行在其独立的进程中,服务之间通过轻量级的通信机制(…...

stripe Element 如何使用
这里要准备好几个东西: 一个支付成功过后的回调 还有一个下单的接口 一旦进入这个下单界面,就要去调下单的接口的,用 post, 这个 接口你自己写,可以写在后端中,也可以放到 nextjs 的 api 中。 首先说的是这个下单…...
vue3动态引入图片不显示问题
方法1.(打包后动态引用的图片未被打包入工程中,webpack,vite) 1.图片放到public 目录会更省事,不管是开发环境还是生产环境,可以始终以根目录保持图片路径的一致. 假设: 静态文件目录:src/assets/images/ 我们的目标静态文件在 …...
【流媒体】RTMPDump—AMF编码
目录 1. AMF类型2. AMF编码2.1 AMF_Number (AMF_EncodeNumber)2.2 AMF_BOOLEAN (AMF_EncodeBoolean)2.3 AMF_STRING 和 AMF_LONG_STRING (AMF_EncodeString)2.3.1 AMF_EncodeInt162.3.2 AMF_EncodeInt32 2.4 AMF_OBJECT (AMF_Encode)2.4.1 AMF_EncodeInt24 2.5 AMF_ECMA_ARRAY …...
浅谈 React Hooks
React Hooks 是 React 16.8 引入的一组 API,用于在函数组件中使用 state 和其他 React 特性(例如生命周期方法、context 等)。Hooks 通过简洁的函数接口,解决了状态与 UI 的高度解耦,通过函数式编程范式实现更灵活 Rea…...

stm32G473的flash模式是单bank还是双bank?
今天突然有人stm32G473的flash模式是单bank还是双bank?由于时间太久,我真忘记了。搜搜发现,还真有人和我一样。见下面的链接:https://shequ.stmicroelectronics.cn/forum.php?modviewthread&tid644563 根据STM32G4系列参考手…...
论文解读:交大港大上海AI Lab开源论文 | 宇树机器人多姿态起立控制强化学习框架(二)
HoST框架核心实现方法详解 - 论文深度解读(第二部分) 《Learning Humanoid Standing-up Control across Diverse Postures》 系列文章: 论文深度解读 + 算法与代码分析(二) 作者机构: 上海AI Lab, 上海交通大学, 香港大学, 浙江大学, 香港中文大学 论文主题: 人形机器人…...
质量体系的重要
质量体系是为确保产品、服务或过程质量满足规定要求,由相互关联的要素构成的有机整体。其核心内容可归纳为以下五个方面: 🏛️ 一、组织架构与职责 质量体系明确组织内各部门、岗位的职责与权限,形成层级清晰的管理网络…...
【C语言练习】080. 使用C语言实现简单的数据库操作
080. 使用C语言实现简单的数据库操作 080. 使用C语言实现简单的数据库操作使用原生APIODBC接口第三方库ORM框架文件模拟1. 安装SQLite2. 示例代码:使用SQLite创建数据库、表和插入数据3. 编译和运行4. 示例运行输出:5. 注意事项6. 总结080. 使用C语言实现简单的数据库操作 在…...

C++ 求圆面积的程序(Program to find area of a circle)
给定半径r,求圆的面积。圆的面积应精确到小数点后5位。 例子: 输入:r 5 输出:78.53982 解释:由于面积 PI * r * r 3.14159265358979323846 * 5 * 5 78.53982,因为我们只保留小数点后 5 位数字。 输…...

深度学习习题2
1.如果增加神经网络的宽度,精确度会增加到一个特定阈值后,便开始降低。造成这一现象的可能原因是什么? A、即使增加卷积核的数量,只有少部分的核会被用作预测 B、当卷积核数量增加时,神经网络的预测能力会降低 C、当卷…...
服务器--宝塔命令
一、宝塔面板安装命令 ⚠️ 必须使用 root 用户 或 sudo 权限执行! sudo su - 1. CentOS 系统: yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh2. Ubuntu / Debian 系统…...
代码随想录刷题day30
1、零钱兑换II 给你一个整数数组 coins 表示不同面额的硬币,另给一个整数 amount 表示总金额。 请你计算并返回可以凑成总金额的硬币组合数。如果任何硬币组合都无法凑出总金额,返回 0 。 假设每一种面额的硬币有无限个。 题目数据保证结果符合 32 位带…...

华为OD机考-机房布局
import java.util.*;public class DemoTest5 {public static void main(String[] args) {Scanner in new Scanner(System.in);// 注意 hasNext 和 hasNextLine 的区别while (in.hasNextLine()) { // 注意 while 处理多个 caseSystem.out.println(solve(in.nextLine()));}}priv…...