方法一
双击复制:
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('复制成功')
},