比如项目中有这样的一个需求,就是在某个页面上有一些按钮,这些按钮的状态不固定。可能有时候按钮会禁用不让点击。有时候按钮是正常的状态,允许点击。所以总结下来就是:如果是禁用状态,当鼠标悬浮的时候,出现文字提示;如果是正常状态,当鼠标悬浮的时候就不出现任何变化。好像挺简单的,不过里面有一个细节,需要注意下。
饿了么ui中的el-tooltip组件具有开启和关闭的功能,但是如果我们直接把组件套在el-button外面,我们会发现,el-tooltip无法开启了,好像也被el-button的禁用,无法打开了。
解决方案就是在el-button的外层,再加上一个div包裹起来,这样的话,类名el-tooltip就会加到div身上,就不会受到按钮禁用的影响了。
我们先看一下最终的效果图
<el-table-column label="操作" align="center" width="220px">
<template #default="{ row }">
<el-tooltip
effect="dark"
:disabled="row.DiskState !== 'ATTACHED'"
content=""
placement="top"
>
//将提示语换行显示,如不需要换行直接写入上方content
<div style="width: 140px" slot="content">
正常生命周期的弹性数据盘云硬盘才能直接扩容
</div>
// 需要用标签包裹 禁用时才会显示提示语效果
<span style="margin: 0 10px">
<el-button
:disabled="row.DiskState === 'ATTACHED'"
type="text"
size="small"
@click="checkDetails(row)"
>
磁盘扩容
</el-button>
</span>
</el-tooltip>
<el-button type="text" size="small" @click="delcvmCbs(row)">
资源销毁
</el-button>
</template>
</el-table-column>
版权声明:本文为FellAsleep原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。