vue iview table Tooltip内容过多闪屏解决

news2024/11/18 0:00:27

vue的项目,框架是iview

 客户反应,指令描述的内容有几百个字,鼠标悬浮,浏览器开始闪烁

解决思路是加宽度限制,滚动,

后面发现像是transfer属性的bug,触碰浏览器底部,距离不够造成

做一个全局封装

在src/system/utils/  新建一个system.js文件

// 封装表格tooltip闪屏的处理  参数是 render: (h, params) => {}   例: content = params.row.original_info 

const renderTooltip = (h, params, content) => {

  const isTopPlacement = [0, 1, 2, 3].includes(params.row._index);

  const contentStyle = {

    whiteSpace: "normal",

    wordWrap: "break-word",

    maxHeight: "150px",

    overflow: "auto"

  };

  const tooltipProps = {

    props: {

      placement: isTopPlacement ? "bottom" : "top",

      transfer: isTopPlacement ? true : false

    },

    style: {

      width: "100%"

    }

  };

  let tooltipContent = null;

  if (content) {

    tooltipContent = [

      h("div", {

        style: {

          overflow: "hidden",

          textOverflow: "ellipsis",

          whiteSpace: "nowrap"

        }

      }, content),

      h("div", {

        slot: "content",

        style: contentStyle

      }, content)

    ];

  }

  return h("div", {}, [

    tooltipContent && h("Tooltip", tooltipProps, tooltipContent)

  ]);

}

export default {

  renderTooltip,

}


 

在src/util/   新建一个index.js文件

import systemUtil from '@/system/utils/system'

export default {

  $renderTooltip: systemUtil.renderTooltip  // 封装表格tooltip闪屏的处理 

}

main.js中导入

import util from '@/util/index'

Vue.prototype.$util = util // 将公共方法挂在到vue原型链上

在页面引入

 

{

            title: '指令描述', key: 'instructionDesc', align: 'center', minWidth: 120, ellipsis: true, tooltip: true,

            render: function (h, params) {

              return ths.$util.$renderTooltip(h, params, params.row.instructionDesc)

            }

          },

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

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

相关文章

重新理解 RocketMQ Commit Log 存储协议

最近突然感觉:很多软件、硬件在设计上是有 root reason 的,不是 by desgin 如此,而是解决了那时、那个场景的那个需求。一旦了解后,就会感觉在和设计者对话,了解他们的思路,学习他们的方法,思维…

C#可视化 国产热剧信息查询(具体做法及全部代码)

目录 题目: 做法: 代码部分: DBHelper类 From1主窗体代码 题目: 1. 首次打开页面,展示所有汽车信息列表,如图 1 所示。 2.双击第二行右边内容全部发生改变 数据库设计及内容 做法: 首先设置d…

React hooks文档笔记(五)useEffect——解决异步操作竞争问题

1.开发环境下组件加载两次? 非bug,重新安装组件仅在开发过程中发生,帮助找到需要清理的效果。在生产环境中只会加载一次。 React 将在 Effect 下次运行之前以及卸载期间调用您的清理函数。return () > {}; 2. 🌰订阅事件情况…

Python连接MySQL数据库(简单便捷)

🐒,本文中,使用到的工具有:Pycharm,Anaconda,MySQL 5.5,spyder(Anaconda) 什么是 PyMySQL? PyMySQL 是在 Python3.x 版本中用于连接 MySQL 服务器的一个库,Python2 中则…

Java 语言基础练习题

Java 语言基础练习题 Key Point ●包的基本语法 ●Java 语言中的标识符,命名规范 ●八种基本类型 ●基本操作符 ●if 语句和switch 语句 练习 1.(标识符命名)下面几个变量中,那些是对的?那些是错的?错的请…

C++学习 程序控制结构

程序控制结构 以某种顺序执行的一系列动作,用于解决某个问题。包括 顺序结构、选择结构、循环结构。 顺序结构 按照顺序正常执行。前几篇文章的代码都是顺序结构的体现。 选择结构 执行满足条件的语句。 if 结构:if (表达式){} 表达式为真则执行&…

Linux历史及环境搭建(VMware搭建CentOS7环境)

Linux历史及环境搭建 1.Linux历史1.1 UNIX发展的历史1.2 Linux发展历史1.2.1 开源1.2.2 官网1.2.3 发行版本 2.VMware配置CentOS7环境2.1 CentOS下载2.2 配置环境2.3 切换国内阿里源2.4 无图形化界面开机 结语 1.Linux历史 在这里简要介绍Linux的发展史。要说 Linux&#xff0…

机器学习李宏毅学习笔记36

文章目录 前言Meta learning应用总结 前言 Meta learning(二)应用方向 Meta learning应用 回顾gradient descen Θ0(initial的参数)是可以训练的,一个好的初始化参数和普通的是有很大差距的。可以通过一些训练的任务…

Python通过私信消息提取博主的赠书活动地址

文章目录 前言背景设计开发1.引入模块2.获取私信内容3.根据文本提取url的方法4.获取包含‘书’的url5.程序入口 效果总结最后 前言 博主空空star主页空空star的主页 大家好,我是空空star,本篇给大家分享一下《通过私信消息提取博主的赠书活动地址》。 背…

通用策略04丨ORB魔改框架+自适应动量过滤模板

量化策略开发,高质量社群,交易思路分享等相关内容 大家好,今天我们分享2023年度第4期通用策略——ORB魔改框架自适应动量过滤模板。 本期策略是2023年通用系列第4篇。本期主要内容有对ORB原版的逻辑魔改,其次我们将跨日周期均线过…

现在有一个未分库分表的系统,未来要分库分表,如何设计才可以让系统从未分库分表动态切换到分库分表上?

停机迁移方案 最 low 的方案,就是很简单,大家伙儿凌晨 12 点开始运维,网站或者 app 挂 个公告,说 0 点到早上 6 点进行运维,无法访问。 接着到 0 点停机,系统停掉,没有流量写入了,…

设计一个高流量高并发的系统需要关注哪些点

1、设计原则 1.1、系统设计原则 在设计一个系统之前,我们先要有一个统一且清晰的认知:不要想着一下就能设计出完美的系统,好的系统是迭代出来的。不要复杂化,要先解决核心问题。但是要有先行的规划,对现有的问题有方…

字符与代表数据的转化

目的 在与设备交互当中,大都以十六进制的数进行交互。 而显示给用户时,是以字符的形式显示。 这中间就需要字符与其所代表的数值的转化,比如: ‘0F’---->0x0F 这怎么实现呢,一个是字符,另一个是数字&a…

Apache seatunnel集群部署

跳转到安装目录 cd /opt/soft/seatunnel 1.设置环境变量 export SEATUNNEL_HOME/opt/soft/seatunnel export PATH$PATH:$SEATUNNEL_HOME/bin 启动服务端 ./bin/seatunnel-cluster.sh -d 启动客户端 ./bin/seatunnel.sh --config ./config/kafka2gbase_udf.conf 这样就启…

Vue3 数字滚动插件 vue-countup-v3

文章目录 介绍效果安装属性事件配置项完整样例 介绍 vue-countup-v3 插件是一个基于 Vue3 的数字动画插件,用于在网站或应用程序中创建带有数字动画效果的计数器。通过该插件,我们可以轻松地实现数字的递增或递减动画,并自定义其样式和动画效…

软件测试职业发展的7个阶段,哪个都吃香!

首先谈谈我在软件测试行业的亲身经历:我的一位同事曾经很认真地问过我一个问题,他说他现在从事软件测试工作已经4年了,但是他不知道现在的工作和自己在工作3年时有什么不同,他想旁观者清,也许我能回答他的问题。此外他…

手写vue-diff算法(一)

Vue初始化流程 1.Vue流程图 Vue流程图: Vue的初始化流程,默认会创建一个Vue实例,执行初始化、挂载、模板编译操作,模板被编译成为render函数;在render函数初始化时会执行取值操作,从而进入getter方法对当…

【科研入门】会议、期刊、出版社、文献数据库、引文数据库、SCI分区、影响因子等基础科研必备知识

大家好,我是洲洲,欢迎关注,一个爱听周杰伦的程序员。关注公众号【程序员洲洲】即可获得10G学习资料、面试笔记、大厂独家学习体系路线等…还可以加入技术交流群欢迎大家在CSDN后台私信我! 本文目录 一、会议与期刊二、如何辨别是否…

【UE5 Cesium】07-Cesium for Unreal 从一个地点飞行到另一个地点(下)

UE版本:5.1 介绍 本文以在基督城(新西兰)和悉尼(澳大利亚)这两个城市间为例,在上一篇文章(【UE5 Cesium】06-Cesium for Unreal 从一个地点飞行到另一个地点(上)&#…

vant-weapp源码解析---Tab标签页

这个标签栏,属于一个很常见的组件,一般我不用这个组件,自己手写一个scroll-view以及样式,更加轻便。但是我写的最简单的标签页没有滚动效果,以及选中标签动画效果。因此根据标签栏滚动学习下,并且自己手写一…