vue通过插件clipboard复制文本
1、下载
npm install clipboard --save
2、在需要复制的组件中引入
import Clipboard from 'clipboard'
也可以在main.js中引入:
import Clipboard from 'clipboard'
Vue.prototype.$clipboard = Clipboard;
此时在使用的时候 Clipboard 需改为 this.$clipboard
let clipboard = new this.$clipboard('.copy_btn')
3、通过属性 data-clipboard-text 绑定需要复制的值,设置一个类名供插件获取dom,通过点击事件触发回调
<input type="text" v-model="message" /> <el-button class="copy_btn" :data-clipboard-text="message" @click="handleCopy">点击复制</el-button>
handleCopy() {
let clipboard = new Clipboard('.copy_btn')
clipboard.on('success', (e) => {
this.$message.success('复制成功')
clipboard.destroy() // 释放内存
})
clipboard.on('error', (e) => {
this.$message.error('不支持复制')
clipboard.destroy() // 释放内存
})
}
完整代码:

<template> <div> <input type="text" v-model="message" /> <el-button class="copy_btn" :data-clipboard-text="message" @click="handleCopy">点击复制</el-button> </div> </template> <script> import Clipboard from 'clipboard' export default { data() { return { message: '我是可以复制的内容,请点击复制' } }, methods: { handleCopy() { let clipboard = new Clipboard('.copy_btn') clipboard.on('success', (e) => { this.$message.success('复制成功') clipboard.destroy() // 释放内存 }) clipboard.on('error', (e) => { this.$message.error('不支持复制') clipboard.destroy() // 释放内存 }) } } } </script>
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 提示词工程——AI应用必不可少的技术
· 字符编码:从基础到乱码解决
· 地球OL攻略 —— 某应届生求职总结
2020-06-02 pdf预览----vue-pdf、pdfjs-dist、pdfjs插件