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>
相关推荐
烛阴21 分钟前
Mix
前端·webgl
代码续发33 分钟前
前端组件梳理
前端
试图让你心动1 小时前
原生input添加删除图标类似vue里面移入显示删除[jquery]
前端·vue.js·jquery
_Kayo_1 小时前
VUE2 学习笔记6 vue数据监测原理
vue.js·笔记·学习
陈不知代码2 小时前
uniapp创建vue3+ts+pinia+sass项目
前端·uni-app·sass
小王码农记2 小时前
sass中@mixin与 @include
前端·sass
陈琦鹏2 小时前
轻松管理 WebSocket 连接!easy-websocket-client
前端·vue.js·websocket
hui函数2 小时前
掌握JavaScript函数封装与作用域
前端·javascript
行板Andante2 小时前
前端设计中如何在鼠标悬浮时同步修改块内样式
前端
Carlos_sam3 小时前
Opnelayers:ol-wind之Field 类属性和方法详解
前端·javascript