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

dataV组件使用——数据更新更新组件

bug 当数据更新只更新一个属性页面不会刷新(this.config1.data = arr;)
必须重新赋值整个config

image.png

方式一:检测到数据更新重新赋值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中绑定对象,数据变化会自动更新页面

image.png

 <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 当数据更新只更新一个属性页面不会刷新&#xff08;this.config1.data arr;&#xff09; 必须重新赋值整个config 方式一&#xff1a;检测到数据更新重新赋值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#写到代码&#xff0c;看来网上写的方法&#xff0c;自己也踩了一些坑&#xff0c;这里总结一下&#xff0c;我只试了CLR的方法。 主要参考了下面几篇博客 C调用C#库简单例程&#xff08;Lucky…...

开源前端埋点监控插件Web-Tracing

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

智慧排水远程监测系统物联网解决方案

智慧排水监测系统是一种集成了现代信息技术、物联网技术、大数据分析及云计算能力的高效城市排水管理解决方案。该系统通过全面、实时地监控城市排水网络的运行状态&#xff0c;旨在预防内涝灾害&#xff0c;优化水资源管理&#xff0c;保障城市安全运行&#xff0c;促进可持续…...

【SVN(Subversion)是一个版本控制系统】

Question SVN所有命令 Answer SVN&#xff08;Subversion&#xff09;是一个版本控制系统&#xff0c;用于管理和跟踪文件和目录的更改。以下是一些常用的SVN命令&#xff1a; 检出&#xff08;Checkout&#xff09; svn checkout URL从版本库中检出一个工作副本。 更新&am…...

leetcode108.把升序数组转换成二叉搜索树

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

用QTdesigner制作自己的双目标定软件

目录 1&#xff0c;设计布局软件界面 2&#xff0c;导出界面ui文件为python的.py文件 3&#xff0c;为界面添加对应的功能 4&#xff0c;导出为exe可执行文件 5&#xff0c;运行测试效果 5.1 双击启动 5.2 添加必要的参数 5.3 &#xff0c;运行结果 效果展示 动手制作双…...

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. 使用数据库 …...

翻译软件在医学中的应用

翻译软件在医学中的应用非常广泛&#xff0c;主要体现在以下几个方面&#xff1a; 患者沟通&#xff1a;翻译软件可以帮助医务人员与非母语患者进行有效沟通&#xff0c;确保患者能够准确表达自己的症状和需求&#xff0c;也使医生能够清晰地解释治疗方案和用药说明。这对提升…...

政务大数据解决方案(六)

政务大数据解决方案通过建立综合数据平台&#xff0c;将来自各政府部门的异构数据整合并进行深入分析&#xff0c;利用人工智能和机器学习技术实现智能化数据处理与预测&#xff0c;从而提升政府决策的科学性和实时响应能力。方案涵盖数据采集、存储、处理、分析与可视化&#…...

【MATLAB机器人系统工具箱】【manipulatorRRT规划器】属性和方法解析

启用了连接启发式&#xff08;heuristic&#xff09;后&#xff0c;双向快速扩展随机树&#xff08;RRT&#xff09;算法会在以下情况下忽略 MAXCONNECTIONDISTANCE 的限制&#xff1a;当两棵树&#xff08;起始树和目标树&#xff09;之间的节点距离足够接近时&#xff0c;算法…...

MySQL 多表连接(JOIN)

在数据库开发中&#xff0c;多表连接&#xff08;JOIN&#xff09;是一个非常重要的技术&#xff0c;它使得我们可以在查询中整合多个表的数据&#xff0c;进而实现更加复杂的数据操作。本文将深入探讨 MySQL 中的多表连接&#xff0c;帮助读者全面理解 JOIN 的基本概念、类型和…...

Opencv学习-直方图比较

由于图像的直方图表示图像像素灰度值的统计特性&#xff0c;因此可以通过两幅图像的直方图特性比较 两幅图像的相似程度。从一定程度上来讲&#xff0c;虽然两幅图像的直方图分布相似不代表两幅图像相似&#xff0c;但是两幅图像相似则两幅图像的直方图分布一定相似。例如&…...

一文入门:正则表达式基础

正则表达式简介 正则表达式&#xff08;Regular Expression&#xff0c;简称regex或RE&#xff09;是一种用于匹配字符串中字符组合的模式。它广泛应用于编程语言、文本编辑器和各种工具中&#xff0c;用于执行复杂的字符串搜索和替换任务。 为什么使用正则表达式&#xff1f…...

深入理解 `@DateTimeFormat` 和 `@JsonFormat` 注解

前言 在Java应用程序中&#xff0c;处理日期和时间是一个常见的需求。无论是从数据库读取还是通过API接收数据&#xff0c;正确的日期和时间格式都是确保应用正确运作的关键因素。本文将深入探讨两个常用的注解——DateTimeFormat和JsonFormat——以及它们如何帮助我们在Sprin…...

微服务架构设计中的常见的10种设计模式

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

stripe Element 如何使用

这里要准备好几个东西&#xff1a; 一个支付成功过后的回调 还有一个下单的接口 一旦进入这个下单界面&#xff0c;就要去调下单的接口的&#xff0c;用 post, 这个 接口你自己写&#xff0c;可以写在后端中&#xff0c;也可以放到 nextjs 的 api 中。 首先说的是这个下单…...

vue3动态引入图片不显示问题

方法1.(打包后动态引用的图片未被打包入工程中,webpack,vite) 1.图片放到public 目录会更省事&#xff0c;不管是开发环境还是生产环境&#xff0c;可以始终以根目录保持图片路径的一致. 假设&#xff1a; 静态文件目录&#xff1a;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 …...

AudioSeal Pixel Studio实操手册:音频指纹哈希值生成与区块链存证接口对接示例

AudioSeal Pixel Studio实操手册&#xff1a;音频指纹哈希值生成与区块链存证接口对接示例 1. 工具概述与核心价值 AudioSeal Pixel Studio是一款基于Meta开源的AudioSeal算法构建的专业音频水印工具。它能够在保持原始音频质量的前提下&#xff0c;为音频文件嵌入不可感知的…...

Kando代码贡献终极指南:7个步骤提交高质量的Pull Request

Kando代码贡献终极指南&#xff1a;7个步骤提交高质量的Pull Request 【免费下载链接】kando &#x1f338; Do things with utmost efficiency. 项目地址: https://gitcode.com/gh_mirrors/ka/kando Kando是一款跨平台的饼图菜单桌面应用程序&#xff0c;它提供了一种非…...

Z-Image-Turbo-辉夜巫女镜像维护:模型更新、日志轮转与服务健康监控方案

Z-Image-Turbo-辉夜巫女镜像维护&#xff1a;模型更新、日志轮转与服务健康监控方案 1. 引言 如果你正在使用基于Xinference部署的Z-Image-Turbo-辉夜巫女文生图模型服务&#xff0c;并且通过Gradio界面来生成那些精美的辉夜巫女图片&#xff0c;那么这篇文章就是为你准备的。…...

3步诊断显存故障:memtest_vulkan如何帮你精准定位显卡问题?

3步诊断显存故障&#xff1a;memtest_vulkan如何帮你精准定位显卡问题&#xff1f; 【免费下载链接】memtest_vulkan Vulkan compute tool for testing video memory stability 项目地址: https://gitcode.com/gh_mirrors/me/memtest_vulkan 在显卡稳定性测试领域&#…...

Qwen3-14B二次开发入门:基于内置Transformers接口扩展自定义功能

Qwen3-14B二次开发入门&#xff1a;基于内置Transformers接口扩展自定义功能 1. 为什么需要二次开发Qwen3-14B Qwen3-14B作为通义千问系列的最新大语言模型&#xff0c;在通用任务上表现出色。但在实际业务场景中&#xff0c;我们往往需要针对特定需求进行功能扩展。比如&…...

OpenClaw自动化写作流:Phi-3-mini-128k-instruct生成技术文章+校对手册

OpenClaw自动化写作流&#xff1a;Phi-3-mini-128k-instruct生成技术文章校对手册 1. 为什么需要自动化写作流 上周我连续写了三篇技术文章后&#xff0c;突然意识到一个严重问题——每次从资料收集到最终排版&#xff0c;至少要消耗4小时。其中真正用于核心内容创作的时间不…...

万象视界灵坛应用场景:智能安防视频截图分析——自动识别‘是否含未授权人员/危险物品/异常行为’语义

万象视界灵坛在智能安防中的应用&#xff1a;自动识别异常语义分析 1. 智能安防的痛点与解决方案 传统安防监控系统面临三大核心挑战&#xff1a; 人力成本高&#xff1a;需要专人24小时盯守监控画面反应滞后&#xff1a;异常事件往往事后才发现漏检率高&#xff1a;人工监控…...

Ostrakon-VL像素终端实战:用实时摄像头完成便利店突击巡检

Ostrakon-VL像素终端实战&#xff1a;用实时摄像头完成便利店突击巡检 1. 像素特工终端介绍 想象一下&#xff0c;你是一名便利店巡检员&#xff0c;每天需要检查几十家门店的商品陈列、价签准确性和店面整洁度。传统方法需要手动拍照记录、填写表格&#xff0c;既耗时又容易…...

OpenClaw学习助手:Qwen2.5-VL-7B自动解析教材插图

OpenClaw学习助手&#xff1a;Qwen2.5-VL-7B自动解析教材插图 1. 为什么需要AI学习助手 作为一名经常需要阅读大量技术文档的开发者&#xff0c;我发现自己经常陷入"读得快忘得更快"的困境。特别是遇到包含复杂图表和公式的教材时&#xff0c;手动整理关键信息要耗…...

RoboStudio6.08学习记录(1)

一.软件安装一、下载RobotStudio软件官方1. 请登陆网址&#xff1a;https://new.abb.com/products/robotics/robotstudio。2. 单击进入页面“下载RobotStudio软件”3. 单击填写信息后&#xff0c;可以获得下载链接二、安装RobotStudio软件1. 下载完成后&#xff0c;对压缩包进行…...