vue 实现 el-table 点击图标复制文本或者双击文本复制

方法一

双击复制:

el-table 添加 @cell-dblclick="dbClickCopyText" 双击

html 复制代码
<el-table v-loading="loading" @cell-dblclick="dbClickCopyText" :data="xxxList"></el-table>
javascript 复制代码
            // 双击复制
		dbClickCopyText(row, column, cell, event){
				// 双击复制
				let saveText = function (e){
					e.clipboardData.setData('text/plain',event.target.innerText); 
					e.preventDefault();  //阻止默认行为
				}
				// 防止使用之后 其他复制失效 once 执行完复制操作删除
				const once = {
					once: true
				}
				document.addEventListener('copy',saveText,once);//添加一个copy事件
				document.execCommand("copy");//执行copy方法
				this.$message({message: '复制成功', type:'success'})//提示
			},

方法二

点击图标复制

使用vue自带自定义指令 v-clipboard:copy="你要复制的内容"

v-clipboard:success="cop 提示成功

html 复制代码
<el-table-column
   label="xxx名称" 
   width="220px" 
   align="center" 
   prop="itemName" 
   :show-overflow-tooltip="true"
>
   <template slot-scope="scope">
	  <i class="el-icon-document-copy" v-clipboard:copy="scope.row.itemName" v-clipboard:success="copy" style="margin-right: 5px;cursor: pointer;"></i>{{ scope.row.itemName }}
	</template>
</el-table-column>
javascript 复制代码
copy(){
	this.$message.success('复制成功')
},
相关推荐
kyriewen33 分钟前
我用 Codex 重写了同事维护三年的代码,他没说谢谢——而是找了领导
前端·javascript·ai编程
OpenTiny社区1 小时前
从零开发 AI 聊天页要两周?试试这款 Vue3 垂直对话组件库 TinyRobot,直接开箱即用
前端·vue.js·github
铁皮饭盒1 小时前
S3已成为文件存储标准,阿里/腾讯/华为云都支持,Bun率先原生支持
前端·javascript·后端
Cobyte1 小时前
22.Vue Vapor 组件 props 的实现
前端·javascript·vue.js
lichenyang4531 小时前
从 has.showToast 看 ASCF 的 API 调用链路
前端
张就是我1065923 小时前
DOMPurify 的一个漏洞:你以为 {} 是空的?
前端
浮生望3 小时前
JS字符串与回文算法:从包装类到双指针的面试进阶之路
javascript·算法
疯狂的魔鬼3 小时前
一套 Schema 驱动四视图:记 useCrudSchemas 的设计与实践
前端·javascript·typescript
风骏时光牛马3 小时前
大模型开发工具高频故障与实操问题汇总代码案例大全
前端
没落英雄3 小时前
2. 让 Agent 能读写文件、执行命令 —— LocalShellBackend 实战
前端·人工智能·架构