vue复制文字功能

日常开发vue项目偶尔会碰到要复制 订单号 ,或者一串文字的功能,我们使用到了一个插件
vue2使用clipboard
vue3使用vue-clipboard3

vue2的使用
1、安装插件
npm install clipboard --save
2、我们把它封装成一个js,新建一个clipboard.js文件

import Clipboard from 'clipboard'

export const clipboard = (className) => {
  const clipboard = new Clipboard(className)

  clipboard.on('success', e => {
    // 释放内存
    clipboard.destroy()
  })
  clipboard.on('error', e => {
    // 不支持复制
    console.log('该浏览器不支持自动复制')
    // 释放内存
    clipboard.destroy()
  })
}

3、在我们要使用的页面引入clipboard.js,点击复制按钮就复制成功了,你可以鼠标粘贴看看内容是否正确

<template>
  <div>
     <el-button @click="copyLink" class="copyClass" :data-clipboard-text="linkUrl">复制链接</el-button>
  </div>
</template>
<script>
import { clipboard } from './clipboard' //根据你自己项目结构引入
export default {
  data () {
    return {
       linkUrl: 'www.baidu.com'
     }
   },
    methods: {
    //复制链接
      copyLink () {
        clipboard('.copyClass') //按钮的class
      }
    }
}
</script>

vue3的使用
1、安装插件
npm install vue-clipboard3 --save
2、在页面中使用插件

<template>
   <el-button @click="copyLink()">复制链接</el-button>
</template>
<script setup>
import useClipboard from 'vue-clipboard3';
const { toClipboard } = useClipboard();
const copyLink = async () => {
    await toClipboard('www.baidu.com')
}
</script>

最后需要注意的是复制的点击按钮尽量用botton按钮,其他标签不生效。如果你不想要botton的样式,只能把botton的透明度设为opacity: 0, 然后定位到你的盒子上了

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Vue 3中,你可以通过以下步骤实现点击复制文字功能: 1. 首先,在Vue组件中,定义一个data属性来存储要复制文字。例如,可以在data中添加一个属性名为`textToCopy`,并设置初始值。 ```javascript data() { return { textToCopy: '要复制文字' }; } ``` 2. 然后,在模板中添加一个按钮或其他元素,并绑定一个点击事件。 ```html <button @click="copyText">复制</button> ``` 3. 在Vue组件的方法中,定义`copyText`方法来处理点击事件。 ```javascript methods: { copyText() { // 创建一个新的textarea元素 const textarea = document.createElement('textarea'); // 将要复制文字赋值给textarea的value属性 textarea.value = this.textToCopy; // 将textarea元素添加到DOM中 document.body.appendChild(textarea); // 选中textarea中的文字 textarea.select(); // 执行复制操作 document.execCommand('copy'); // 移除textarea元素 document.body.removeChild(textarea); } } ``` 以上代码中,我们通过创建一个新的textarea元素,并将要复制文字赋值给它的value属性。然后,将这个textarea元素添加到DOM中,并选中其中的文字。接着,使用`document.execCommand('copy')`命令执行复制操作。最后,移除这个临时创建的textarea元素。 这样,当点击按钮时,就会将`textToCopy`中的文字复制到剪贴板中。你可以根据自己的需要修改`textToCopy`的值,来实现不同的复制文字功能

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值