移动端VUE点击按钮复制文本

引入clipboard.js
npm install clipboard --save
工具方法的封装
import Clipboard from 'clipboard';
import { Notify } from 'vant';
export default {
  clipboardSuccess(){
    Notify({
      type: 'success',
      message: '复制发票链接成功',
    });
  },

  clipboardError() {
    Notify({
      type: 'danger',
      message: '复制发票链接失败',
    });
  },

  handleClipboard(text, event, onSuccess, onError) {
    event = event || {};
    const clipboard = new Clipboard(event.target, {
      text: () => text,
    });
    clipboard.on('success', () => {
      onSuccess ? onSuccess() : clipboardSuccess();
      clipboard.off('error');
      clipboard.off('success');
      clipboard.destroy();
    });
    clipboard.on('error', () => {
      onError ? onError() : clipboardError();
      clipboard.off('error');
      clipboard.off('success');
      clipboard.destroy();
    });
    clipboard.onClick(event);
  },
}

VUE
<van-button @click="copy()">复制发票链接</van-button>
JS
import clipboard from '../../components/utils/clipboard';
export default {
	name: "text",
	 data() {
	     return {
	       page:{
	         pdfUrl:'http://www.textawd/static/file/text.pdf',
	       }
	     }
	 },
	methods: {
	  copy() {
	    clipboard.handleClipboard(this.page.pdfUrl, event, () => {
	      Notify({
	        type: 'success',
	        message: '复制发票链接成功',
	      });
	    }, () => {
	      Notify({
	        type: 'danger',
	        message: '复制发票链接失败',
	      });
	    })
	  }
 	}
}
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值