vue 如何实现点击复制?

js用 copy

vue呢?

使用navigator.clipboard.writeText()。如果用户授予了相应的权限,就能提供系统的读写访问。在 Web 应用程序中,Clipboard API 可用于实现剪切、复制和粘贴功能。Clipboard API方法是异步的,返回一个promise对象。

这里需要给一个元素绑定事件

2.使用document.execCommand('copy')方法

使用document。execcmmand(copy)

这样的一个方法

通过创建一个textarea元素,将要复制的文本设置成textarea的value,然后将其添加到文档中,选中文本使用document.execCommand('copy')方法进行复制,最后将textarea元素移除

java 复制代码
export default {
  data() {
    return {
      textToCopy: '要复制的文本'
    }
  },
  methods: {
    copyToClipboard() {
      // 创建一个textarea元素
      const textarea = document.createElement('textarea');
      // 设置textarea的值为要复制的文本
      textarea.value = this.textToCopy;
      // 将textarea添加到文档中
      document.body.appendChild(textarea);
      // 选中textarea中的文本
      textarea.select();
      try {
        // 尝试复制选中的文本
        const successful = document.execCommand('copy');
        const msg = successful ? '复制成功' : '复制失败';
        console.log(msg);
      } catch (err) {
        console.log('不能使用这种方法复制', err);
      }
      // 将textarea从文档中移除
      document.body.removeChild(textarea);
    }
  }
}
}

document.execCommand('copy')方法

相关推荐
路修远i7 分钟前
基于SSE的AI对话流式结构
前端·javascript
摸鱼的春哥3 小时前
春哥的Agent通关秘籍13:实现RAG查询
前端·javascript·后端
明月_清风3 小时前
滚动锁定:用户向上翻看历史时,如何阻止 AI 新消息把它“顶”下去?
前端·javascript
明月_清风3 小时前
当高阶函数遇到 AI:如何自动化生成业务层面的逻辑拦截器
前端·javascript·函数式编程
前端Hardy17 小时前
面试官:JS数组的常用方法有哪些?这篇总结让你面试稳了!
javascript·面试
yuki_uix17 小时前
Props、Context、EventBus、状态管理:组件通信方案选择指南
前端·javascript·react.js
全栈老石18 小时前
手写无限画布4 —— 从视觉图元到元数据对象
前端·javascript·canvas
Leon19 小时前
新手引导 intro.js 的使用
前端·javascript·vue.js
牛奶20 小时前
JS随笔:浏览器 API(DOM 与 BOM)
前端·javascript·面试
牛奶20 小时前
JS随笔:异步编程与事件循环
前端·javascript·面试