VUE 实现复制内容到剪贴板的两种方法


Posted in Javascript onApril 24, 2019

VUE 复制内容至剪切板(两种使用方法)

复制内容至剪切板使用的是插件'vue-clipboard2',通过官方文档会发现共有两种使用方式。

第一种方式与大多数文章类似,只粘贴代码:

<template>
 <div class="container">
  <input type="text" v-model="message">
  <button type="button"
      v-clipboard:copy="message"
      v-clipboard:success="onCopy"
      v-clipboard:error="onError">Copy!</button>
 </div>
</template>
<script>
 export default {
  data() {
   return {
    message: 'Copy These Text',
   }
  },
  methods: {
   onCopy: function (e) {
    alert('You just copied: ' + e.text)
   },
   onError: function (e) {
    console.log(e)
    alert('Failed to copy texts')
   }
  }
 }
</script>

这种使用方式直接将变量内容复制至剪切板,暂时没有找到处理数据后再复制的方式,这时就需要使用第二种方式。

第二种方式:

<template>
 <div class="container">
  <input type="text" v-model="message">
  <button type="button" @click="doCopy('add me!')">Copy!</button>
 </div>
</template>
<script>
 export default {
  data() {
   return {
    message: 'Copy These Text'
   }
  },
  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>

通过这段示例代码能看到,复制动作使用的是VUE响应函数方式,这就为复制前控制数据提供了可能!

下面在看下vue实现复制内容到剪贴板功能,具体内容如下所示:

注: 依赖第三方插件 clipboard

一、安装插件

npm install vue-clipboard2 --save

二、全局注入(main.js)

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

三、使用

<ul class="file-list">
 <li v-for="(f, index) of files" :key="index">
 <span>[文件{{index + 1}}] {{f}}</span>
 <span class="copy-btn" v-clipboard:copy="f" v-clipboard:success="onCopy" v-clipboard:error="onError">复制</span>
 </li>
</ul>
// 复制成功时的回调函数
onCopy (e) {
 this.$message.success("内容已复制到剪切板!")
},
// 复制失败时的回调函数
onError (e) {
 this.$message.error("抱歉,复制失败!")
}

四、效果图

VUE 实现复制内容到剪贴板的两种方法

总结

以上所述是小编给大家介绍的VUE 实现复制内容到剪贴板功能,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Javascript 相关文章推荐
javascript Select标记中options操作方法集合
Oct 22 Javascript
Extjs 几个方法的讨论
Jan 28 Javascript
js汉字排序问题 支持中英文混排,兼容各浏览器,包括CHROME
Dec 20 Javascript
解决遍历时Array.indexOf产生的性能问题
Jul 03 Javascript
解决jQuery使用JSONP时产生的错误
Dec 02 Javascript
原生Javascript插件开发实践
Jan 18 Javascript
jQuery插件HighCharts绘制2D柱状图、折线图的组合双轴图效果示例【附demo源码下载】
Mar 09 Javascript
vuejs手把手教你写一个完整的购物车实例代码
Jul 06 Javascript
在vue-cli中组件通信的方法
Dec 16 Javascript
vue里input根据value改变背景色的实例
Sep 29 Javascript
微信jssdk逻辑在vue中的运用详解
Nov 14 Javascript
Element DateTimePicker日期时间选择器的使用示例
Jul 27 Javascript
详解一个小实例理解js原型和继承
Apr 24 #Javascript
微信小程序实现的一键复制功能示例
Apr 24 #Javascript
如何基于vue-cli3.0构建功能完善的移动端架子
Apr 24 #Javascript
解决vue 单文件组件中样式加载问题
Apr 24 #Javascript
vue router 用户登陆功能的实例代码
Apr 24 #Javascript
10个最受欢迎的 JavaScript框架(推荐)
Apr 24 #Javascript
vue.js多页面开发环境搭建过程
Apr 24 #Javascript
You might like
PHP缓存技术的使用说明
2011/08/06 PHP
php实现过滤UBB代码的类
2015/03/12 PHP
PHP编写文件多服务器同步程序
2016/07/02 PHP
laravel 解决路由除了根目录其他都404的问题
2019/10/18 PHP
Web版彷 Visual Studio 2003 颜色选择器
2007/01/09 Javascript
html中的input标签的checked属性jquery判断代码
2012/09/19 Javascript
javascript数组的使用
2013/03/28 Javascript
javascript页面上使用动态时间具体实现
2014/03/18 Javascript
jQuery动态创建html元素的常用方法汇总
2014/09/05 Javascript
Javascript中For In语句用法实例
2015/05/14 Javascript
js+html5实现canvas绘制简单矩形的方法
2015/06/05 Javascript
浅析jQuery移动开发中内联按钮和分组按钮的编写
2015/12/04 Javascript
浅谈jquery中的each方法$.each、this.each、$.fn.each
2016/06/23 Javascript
jQuery中$.ajax()方法参数解析
2016/10/22 Javascript
BootStrap树状图显示功能
2016/11/24 Javascript
Bootstrap基本组件学习笔记之下拉菜单(7)
2016/12/07 Javascript
Extjs让combobox写起来简洁又漂亮
2017/01/05 Javascript
JS获取url参数,JS发送json格式的POST请求方法
2018/03/29 Javascript
jQuery插件Validation表单验证详解
2018/05/26 jQuery
Vue2.x Todo之自定义指令实现自动聚焦的方法
2019/01/08 Javascript
Vue开发之封装分页组件与使用示例
2019/04/25 Javascript
vue实现扫码功能
2020/01/17 Javascript
JavaScript中的this/call/apply/bind的使用及区别
2020/03/06 Javascript
python开发中range()函数用法实例分析
2015/11/12 Python
Python之reload流程实例代码解析
2018/01/29 Python
Python Django基础二之URL路由系统
2019/07/18 Python
tf.concat中axis的含义与使用详解
2020/02/07 Python
Appium+Python实现简单的自动化登录测试的实现
2021/01/26 Python
软件测试工程师笔试题带答案
2015/03/27 面试题
教育专业个人求职信
2013/12/02 职场文书
暑假安全教育广播稿
2014/09/10 职场文书
办公室岗位职责
2015/02/04 职场文书
法定代表人免职证明
2015/06/24 职场文书
MySQL系列之开篇 MySQL关系型数据库基础概念
2021/07/02 MySQL
nginx刷新页面出现404解决方案(亲测有效)
2022/03/18 Servers
Java字符串逆序方法详情
2022/03/21 Java/Android