zoukankan      html  css  js  c++  java
  • vue通过插件clipboard复制文本

    1、下载

    npm install clipboard --save 

    2、在需要复制的组件中引入

    import Clipboard from 'clipboard'

      也可以在main.js中引入:

    import Clipboard from 'clipboard'
    Vue.prototype.$clipboard = Clipboard;

      此时在使用的时候 Clipboard 需改为 this.$clipboard

    let clipboard = new this.$clipboard('.copy_btn')

    3、通过属性 data-clipboard-text 绑定需要复制的值,设置一个类名供插件获取dom,通过点击事件触发回调

        <input type="text" v-model="message" />
        <el-button class="copy_btn" :data-clipboard-text="message" @click="handleCopy">点击复制</el-button>
        handleCopy() {
          let clipboard = new Clipboard('.copy_btn')
          clipboard.on('success', (e) => {
            this.$message.success('复制成功')
            clipboard.destroy() // 释放内存
          })
          clipboard.on('error', (e) => {
            this.$message.error('不支持复制')
            clipboard.destroy() // 释放内存
          })
        }

    完整代码:

    <template>
      <div>
        <input type="text" v-model="message" />
        <el-button class="copy_btn" :data-clipboard-text="message" @click="handleCopy">点击复制</el-button>
      </div>
    </template>
    <script>
    import Clipboard from 'clipboard'
    export default {
      data() {
        return {
          message: '我是可以复制的内容,请点击复制'
        }
      },
      methods: {
        handleCopy() {
          let clipboard = new Clipboard('.copy_btn')
          clipboard.on('success', (e) => {
            this.$message.success('复制成功')
            clipboard.destroy() // 释放内存
          })
          clipboard.on('error', (e) => {
            this.$message.error('不支持复制')
            clipboard.destroy() // 释放内存
          })
        }
      }
    }
    </script>
    View Code
  • 相关阅读:
    软件杯学习:python爬虫爬取新浪新闻并保存为csv格式
    操作系统实验1:时间片轮转和存储管理动态分区分配及回收
    软件测试
    实验6-使用TensorFlow完成线性回归
    实验一
    pycharm中设置anaconda环境
    架构之美读书笔记一
    2.1学习总结:决策树分类器
    python自学日记一
    爱甩卖网站正式上线啦
  • 原文地址:https://www.cnblogs.com/wuqilang/p/14841820.html
Copyright © 2011-2022 走看看