zoukankan      html  css  js  c++  java
  • vue中粘贴板clipboard的使用方法

    一、npm安装clipboard

    npm install clipboard --save

    二、页面结构

    <span id="copyTarget">{{targetCode}}</span>
    <span id="copyBtn" :data-clipboard-text="targetCode" data-clipboard-action="copy" data-clipboard-target="#copyTarget" @click="copy">复制</span>
    targetCode是被复制的文本

    三、引入Clipboard

    import Clipboard from "clipboard";

    四、copy方法

    copy() {
    // 因为此事件不能添加.stop,所以要设置一个开关, 500ms后打开开关
    this.itemIsDisabled = true
    setTimeout(()=>{
    this.itemIsDisabled = false
    }, 500)
    let clipboard = new Clipboard('#copyBtn');
    clipboard.on('success', e => {
    console.log(this, '复制成功!', 'success', e);
    clipboard.destroy()
    })
    clipboard.on('error', e => {
    console.log(this, '该浏览器不支持自动复制!', 'warning', e);
    clipboard.destroy()
    })
    },
    copy方法不能添加.stop等修饰符,所以如果有需求,我的解决方法是添加一个定时器开关,点复制,让开关关闭500ms,在父元素的时间中判断itemIsDisabled就行了。

       success事件中,需要注意this的指向问题。this测试不是指向vue实例

    我是在这篇文章学的:https://blog.csdn.net/qq_41115965/article/details/104795358

    
    
  • 相关阅读:
    交换实验
    ISIS简单配置
    bgp联盟
    BGP2
    BGP 1
    BGP反射器
    ospf实验3
    bzoj 4503: 两个串
    bzoj 4259: 残缺的字符串
    COGS 2287. [HZOI 2015]疯狂的机器人
  • 原文地址:https://www.cnblogs.com/wuyufei/p/15774579.html
Copyright © 2011-2022 走看看