vue 复制剪切板功能

在没项目中经常遇到要求可以复制一东西便于用户去粘贴。

下面就说说两个简单粗暴的方法

第一种:利用document.execCommand() 这个方法 执行浏览器复制领命 

<template>
    <div class="seller-box" @click="Copy('我要复制')"></dev>
</template>

methods:{
  Copy(data){
    let url = data;
    let oInput = document.createElement('input');
    oInput.value = url;
    document.body.appendChild(oInput);
    oInput.select(); // 选择对象;
    document.execCommand("Copy"); // 执行浏览器复制命令
    this.$toast('复制成功');
    oInput.remove()
  }
}

第二种方法:利用第三方插件 vue-clipboard2 

安装 

npm install vue-clipboard2 --save

注入

import VueClipboard from 'vue-clipboard2'
Vue.use(VueClipboard)

使用

<template>
 <div class="container">
  <input type="text" v-model="message">
  <button type="button" @click="doCopy('来呀!来呀')">Copy!</button>
 </div>
</template>
<script>
 export default {
  data() {
   return {
    message: '快点复制我'
   }
  },
  methods: {
   dataProcessing (val) {
    this.message = this.message + ' ' + val
   },
   doCopy: function (val) {
    this.dataProcessing(val)
    this.$copyText(this.message).then(function (e) {
     alert('Copied')
     console.log(e)
    }, function (e) {
     alert('Can not copy')
     console.log(e)
    })
   }
  }
 }
</script>

喜欢博主的可以点赞关注一下

长得美的,长得帅的都关注了

现在就差你了

还不长按关注一下


 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章