Vue项目中实现点击复制

本文介绍了在Vue项目中如何实现点击复制功能,通过使用Clipboard库进行安装和封装,并详细讲解了在实际项目中的具体应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Vue项目中实现点击复制

描述:想要实现一个功能,用户点击某段话即可将该段文字复制到粘贴板

解决:使用Clipboard

  1. 安装Clipboard

    npm install clipboard --save
    
  2. 封装Clipboard

    import Vue from 'vue'
    import Clipboard from 'clipboard'
    
    function clipboardSuccess() {
        Vue.prototype.$message({
            //window.vm.$t() 为i18n国际化
            message: window.vm.$t('copy.successMsg'),
            type: 'success',
            duration: 1500
        })
    }
    
    function clipboardError() {
        Vue.prototype.$message({
            message: window.vm.$t('copy.errorMsg'),
            type: 'error'
        })
    }
    
    export default function handleClipboard(text, event) {
        const clipboard = new Clipboard(event.target, {
            text: () => text
        })
        clipboard.on('success', () => {
            clipboardSuccess()
            clipboard.destroy()
        })
        clipboard.on('error', () => {
            clipboardError()
            clipboard.destroy()
        })
        clipboard.onClick(event)
    }
    
  3. 在项目中使用

    <el-button @click='handleCopy(inputData,$event)'>copy</el-button>
    
    import clip from '@/utils/clipboard' // use clipboard directly
    
    methods: {
      handleCopy(text, event) {
        clip(text, event)
      }
    }
    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值