iview表格内容超出后显示...,鼠标移入提示tooltip

近期用Vue+iview开发的后台项目,表格用的较多,需要对表格中内容超出部分显示…,并提示ToolTip显示全部内容,下面是封装了两个函数,方便在项目中的多次调用。

tool.js文件

// 表格中内容超出后 显示... 鼠标移入并tip提示
/**
 * @param {*} h 
 * @param {*} lines 最多显示多少行,超出后显示... 
 * @param {*} content 显示的内容
 * @returns tip
 * @example {
          key: "vtmName",
          title: "标题",
          align: "center",
            render: (h,params) => {
            return toolTip(h, 2, params.row.vtmName)
            }
        }
 */
export const toolTip = (h, lines, content) => {
    return h('Tooltip', {
        props: {
            placement: 'bottom-start',
            transfer: true
        }
    }, [
        h('span', {
            style: {
                textOverflow: 'ellipsis',
                whiteSpace: 'normal',
                overflow: 'hidden',
                display: '-webkit-box',
                webkitBoxOrient: 'vertical',
                webkitLineClamp: lines + ''
            }
        }, content),
        h('span', {
            slot: 'content',
            style: {
                whiteSpace: 'normal',
                wordBreak: 'break-all'
            }
      }, content)
    ])
}

// 带超链接点击
/**
 * @param {*} h 
 * @param {*} lines 最多显示多少行,超出后显示... 
 * @param {*} content 显示的内容
 * @param {*} url  url链接地址
 * @returns tip
 * @example {
          key: "vtmName",
          title: "标题",
          align: "center",
            render: (h,params) => {
            return toolTipLink(h, 2, params.row.vtmName)
            }
        }
 */
export const toolTipLink = (h, lines, content, url) => {
    return h('Tooltip', {
        props: {
            placement: 'bottom-start',
            transfer: true,
            content: content
        }
    }, [
        h("a", {
            domProps: {
                href: url
            },
            style: {
                textOverflow: 'ellipsis',
                whiteSpace: 'normal',
                overflow: 'hidden',
                display: '-webkit-box',
                webkitBoxOrient: 'vertical',
                webkitLineClamp: lines + ''
            }
        }, content)
    ])
}

vue中的使用

import { toolTip , toolTipLink } from 'tool的path'
// 使用
columns: [         
			{
          key: "vtmName"
          title: "标题",
          align: "center",
          render: (h,params) => {
            //我这里是超出2行后显示... , 并提示tip
            return toolTip(h, 2,params.row.vtmName)
            // 带超链接点击的
            //return toolTipLink(h,2,params.row.vtmName, 'https://www.baidu.com跳转的url')
        }
          	}, 
        ]
  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值