Vue 给表格单元格加省略号和hover提示

基于antd vue的a-popover封装一下即可

<template>
  <a-popover
    v-model="visible"
    trigger="none"
  >
    <template #content>
      {{ text }}
    </template>
    <div
      class="ellipsis"
      @mouseenter="onMouseenter"
      @mouseleave="onMouseleave"
    >
      {{ text }}
    </div>
  </a-popover>
</template>

<script setup>
import { defineProps, ref } from 'vue';

defineProps({
  text: {
    type: String,
    default: '',
  },
});

const visible = ref(false);

const checkOverflow = element => element.scrollWidth > element.clientWidth;

let cancelEnter = true;
let cancelLeave = true;

const onMouseenter = (e) => {
  cancelEnter = false;
  cancelLeave = true;
  setTimeout(() => {
    if (!cancelEnter) {
      visible.value = checkOverflow(e.target);
    }
  }, 100);
};

const onMouseleave = () => {
  cancelLeave = false;
  cancelEnter = true;
  setTimeout(() => {
    if (!cancelLeave) {
      visible.value = false;
    }
  }, 120);
};

</script>

<style lang="less">
.ellipsis {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
</style>

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-19 19:42:03       67 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-19 19:42:03       71 阅读
  3. 在Django里面运行非项目文件

    2024-07-19 19:42:03       58 阅读
  4. Python语言-面向对象

    2024-07-19 19:42:03       69 阅读

热门阅读

  1. Eclipse Temurin Docker镜像

    2024-07-19 19:42:03       16 阅读
  2. npm 缓存目录

    2024-07-19 19:42:03       16 阅读
  3. vllm安装踩坑

    2024-07-19 19:42:03       23 阅读
  4. 探索Eureka的高级用法:在服务中实现分布式锁

    2024-07-19 19:42:03       19 阅读
  5. ArkTS语法---运算符及语句

    2024-07-19 19:42:03       23 阅读
  6. Python_封装和继承

    2024-07-19 19:42:03       16 阅读
  7. SQL Server 和 MySQL 的主要区别

    2024-07-19 19:42:03       20 阅读
  8. 益铭祥元宇宙

    2024-07-19 19:42:03       19 阅读
  9. 计算机视觉7 kag比赛

    2024-07-19 19:42:03       19 阅读
  10. 《管理表格系统》开发心得

    2024-07-19 19:42:03       21 阅读
  11. gdb 的常用指令

    2024-07-19 19:42:03       20 阅读
  12. 矩形加矩形求和

    2024-07-19 19:42:03       20 阅读
  13. TCP协议

    TCP协议

    2024-07-19 19:42:03      19 阅读