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

dv-scroll-board 鼠标移入单元格显示单元格所有数据

前言:在使用大屏组件库data-v开发大屏驾驶舱系统,dv-scroll-board实现表格数据滚动的效果,但是某一列数据较多,需求提出:鼠标移上去要显示对应的问题,完全展示出来。奈何以前没有搞过这个问题,随即立马找向百度麻麻!实现效果及方法如下:

<template>
  <div @mousemove="move" @mouseleave="leave" style="position: relative">
    <dv-scroll-board
      style="width: 100%; height: 230px; padding: 0 10px"
      :config="config"
      @mouseover="over"
    />
    <p
      v-if="ifShow"
      class="dv-text"
      :style="{ top: dvText.keyY, right: dvText.keyX, left: dvText.keyX }"
    >
      {{ dvTextName }}
    </p>
  </div>
</template>

<script>
export default {
  data() {
    return {
      dvText: {
        keyX: "15px",
        keyY: "0px",
      },
      dvTextName: "",
      ifShow: false,
      config: {
        header: ["告警标题", "告警时间", "告警状态"],
        data: [
          [
            "任务异常",
            "2025/3/18 5:16:24",
            "已清除",
          ]
        ],
        rowNum: 5, //表格行数
        headerBGC: "rgba(41, 105, 177,0.3)", //表头
        oddRowBGC: "transparent", //奇数行
        evenRowBGC: "transparent", //偶数行
        hoverPause: false,
        // index: true,
        columnWidth: [153, 153, 153, 153, 153],
        align: ["center", "center", "center", "center", "center"],
      },
    };
  },
  created() {},
  mounted() {},
  methods: {
   // 这个地方根据自己的业务自行调整,我是固定就放到最上边显示。
    move() {
      //将获取的值x轴、y轴的值给悬浮框 用来定位到单元格上.
      //-1200 -500凭自己感觉调 因为每个表格在页面的位置都不一样
      // this.dvText.keyX = e.pageX - 1300 + "px";
      // this.dvText.keyY = e.pageY - 550 + "px";
    }, // 鼠标离开
    leave() {
      //隐藏单元格
      this.ifShow = false;
    },
    over(v) {
      if (v.columnIndex == 0) {
        console.log(v, "---");
        this.ifShow = true;
        //v.ceil拿到单元格数据
        this.dvTextName = v.ceil;
        没有值则直接隐藏悬浮框 不然如果设置padding会有背景
        if (!this.dvTextName) {
          this.ifShow = false;
        }
      }
    },
  },
};
</script>
<style scoped lang="scss">
.dv-text {
  background: #666;
  padding: 5px;
  font-size: 14px;
  z-index: 11;
  position: absolute;
  left: 0;
  top: 0;
}
</style>

总结:

1、针对某个单元格的样式可以单独修改吗?比如想要告警状态那一列的某一行显示红色字体?有想法的可以告知下👍

2、DataV组件库可以再频繁运用下😁


http://www.kler.cn/a/596979.html

相关文章:

  • systemd-networkd 的 /etc/systemd/network/*.network 的配置属性名称是不是严格区分大小写?是
  • 全面解读 联核科技四向穿梭车的常见功能介绍
  • 记录一次truncate导致MySQL夯住的故障
  • 【003安卓开发方案调研】之ReactNative技术开发安卓
  • 金蝶云星辰数据集成技术案例:采购退货对接旺店通
  • SpringBoot项目实战(初级)
  • 在Android Studio中,如何快速为变量添加m?
  • 2025年3月22日(自动控制原理)
  • 【赵渝强老师】在Docker中运行达梦数据库
  • 基于C8051F020单片机的液晶显示,LCD1602并口驱动,单片机并口驱动LCD1602
  • Vue.js 表单开发
  • python3最新版下载及python 3.13.1安装教程(附安装包)
  • MySQL拒绝访问
  • SAP ABAP SELECT SINGLE 注意点
  • HyperAD:学习弱监督音视频暴力检测在双曲空间中的方法
  • WSL git文件异常 所有文件均显示已修改
  • PHP 应用文件管理模块显示上传黑白名单类型过滤访问控制
  • Vue 3 项目实现国际化指南 i18n
  • Python:可迭代对象,迭代器对象
  • 图解AUTOSAR_CP_DiagnosticLogAndTrace