VUE、JS实现复制文本

一、前言

适用场景:

  • 复制文本
  • 复制链接
  • 复制段落
  • 复制账号、手机号
  • ···

友情提示:浏览器自带document.execCommand()方法(已弃用)

二、实现方法

  • 剪贴板 clipboard API 提供了响应剪贴板命令(剪切、复制和粘贴)与异步读写系统剪贴板的能力;
  • 本次仅演示复制文本,其他Api可自行探索。
xml 复制代码
<template>
  <div class="box">
    <button style="margin: 20px" class="copy" @click="copy(data.text)">复制</button>
  </div>
</template>
<script setup>
import { ref, reactive, toRefs, watch, computed, defineProps } from "vue";
import { useStore } from "vuex";
import { useRoute, useRouter } from "vue-router";
const route = useRoute();
const router = useRouter();
const store = useStore();
const data = reactive({
  text:'这是一段内容'
});
// 复制
const copy = (txt) => {
  // 将文本内容复制到剪贴板
  navigator.clipboard.writeText(txt).then(() => {
      alert("复制文本成功");
    })
    .catch(() => {
      alert("复制文本失败");
    });
};
// const { } = toRefs(data)
</script>
<style scoped lang="scss"></style>
相关推荐
kyriewen2 小时前
我手写了一个 EventEmitter,面试官追问了 6 个问题——第 4 个我没答上来
前端·javascript·面试
IT_陈寒3 小时前
Java的Date类又坑了我一次,改用时间戳真香
前端·人工智能·后端
山河木马3 小时前
矩阵专题2-怎么创建视图矩阵(uViewMatrix)
javascript·webgl·计算机图形学
小林攻城狮3 小时前
使用 Transport 节流解决 Vercel AI SDK 流式渲染卡死问题
前端·react.js
前端缘梦4 小时前
告别 TS 运行时类型漏洞!Zod 完整入门实战教程(前端 / 全栈必备)
前端·react.js·全栈
the_answer4 小时前
Webpack vs Vite 深度对比分析
前端·webpack
转转技术团队4 小时前
验证码识别实战:前端不写页面,改训模型了?
前端
MomentYY4 小时前
Temperature:AI 的“脑洞旋钮”
前端·llm·ai编程
远航_4 小时前
OpenSpec 完整详细介绍
前端·后端
召钱熏5 小时前
状态枚举正确≠渲染正确:一个语音按钮的状态机边界修复实录
android·前端