Vue中使用clipboard实现复制功能


Posted in Javascript onSeptember 05, 2018

clipboard.js 是一个不需要flash,将文本复制到剪贴板的插件。下面给大家介绍Vue中使用clipboard实现复制功能,具体内容如下所示:

首先现在Vue中引入clipboard

npm install clipboard --save

在需要使用的组件中import 引入clipboard

import Clipboard from 'clipboard';

clipboard的实际使用

不论是单按钮复制还是多按钮复制,一定要在页面加载DOM完成后先New出来具有复制功能的按钮,如果在函数内再New那么可能会出现点击复制按钮两次,才复制成功的现象,如下:

mounted() {
  var copybtn = document.getElementsByClassName('btn')
  this.clipboard = new Clipboard(copybtn);
  }
<!--并不一定非要在mounted中也可以在其他周期内,

    只要页面已经加载完DOM即可,如果是动态生成可以使用nextTick中New。-->

绑定复制内容的方式有以下几种:

<!--第一种直接绑定在按钮上-->
 <button class="marleft10 btn" style="float: right;border: none;" :data-clipboard-text="2"
    @click="copy()">复制
    </button>
<!--第二种单个复制按钮动态获取需要复制的内容-->
<input type="text" v-model="copyContent" id="copy_text" style="opacity: 0">
<button ref="copy" data-clipboard-action="copy" data-clipboard-target="#copy_text" @click="copy">复制</button>
<!--第三种可以在New Clipboard时设定要复制的内容-->
new Clipboard('copyBtn',function(){
  return <!--要复制的内容-->
})
copy(){
  let _this = this
  <!--如果在内部new会出现点击两次在复制成功的现象所以还请各位多多注意-->
  clipboard.on('success', function () {
    Toast('复制成功')
    _this.destroy() <!--销毁缓存,然后在重新new这样不会出现点击复制上出现之前复制的内容的情况-->
    _this.clipboard = new Clipboard(copyBtn);
  })
  clipboard.on('error', function () {
    Toast('复制失败,请手动复制')
   })
  }

总结

以上所述是小编给大家介绍的Vue中使用clipboard实现复制功能,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
jQuery中setTimeout的几种使用方法小结
Apr 07 Javascript
javascript进行四舍五入方法汇总
Dec 16 Javascript
轻松学习jQuery插件EasyUI EasyUI实现树形网络基本操作(2)
Nov 30 Javascript
JS提交form表单实例分析
Dec 10 Javascript
AngularJS 指令详细介绍
Jul 27 Javascript
javascript汉字拼音互转的简单实例
Oct 09 Javascript
jQuery:unbind方法的使用详解
Aug 14 jQuery
浅谈React高阶组件
Mar 28 Javascript
JavaScript高阶教程之“==”隐藏下的类型转换
Apr 11 Javascript
Vue 引入AMap高德地图的实现代码
Apr 29 Javascript
JS中的算法与数据结构之列表(List)实例详解
Aug 16 Javascript
node.js使用http模块创建服务器和客户端完整示例
Feb 10 Javascript
vue-cli3.0配置及使用注意事项详解
Sep 05 #Javascript
Vue-cli@3.0 插件系统简析
Sep 05 #Javascript
vue实现点击选中,其他的不选中方法
Sep 05 #Javascript
在vue.js中使用JSZip实现在前端解压文件的方法
Sep 05 #Javascript
Node.js 使用request模块下载文件的实例
Sep 05 #Javascript
详解Angular6学习笔记之主从组件
Sep 05 #Javascript
webpack4 入门最简单的例子介绍
Sep 05 #Javascript
You might like
PHP&amp;MYSQL服务器配置说明
2006/10/09 PHP
php学习笔记 类的声明与对象实例化
2011/06/13 PHP
PHP结合Mysql数据库实现留言板功能
2016/03/04 PHP
php+html5+ajax实现上传图片的方法
2016/05/14 PHP
js 蒙版进度条(结合图片)
2010/03/10 Javascript
推荐11款jQuery开发的复选框和单选框美化插件
2011/08/02 Javascript
防止浏览器记住用户名及密码的简单实用方法
2013/04/22 Javascript
教你在heroku云平台上部署Node.js应用
2014/07/30 Javascript
详解js产生对象的3种基本方式(工厂模式,构造函数模式,原型模式)
2017/01/09 Javascript
JavaScript正则表达式exec/g实现多次循环用法示例
2017/01/17 Javascript
使用JS动态显示文本
2017/09/09 Javascript
JS实现单张或多张图片持续无缝滚动的示例代码
2020/05/10 Javascript
jQuery是用来干什么的 jquery其实就是一个js框架
2021/02/04 jQuery
[56:41]2018DOTA2亚洲邀请赛 3.31 小组赛 A组 Newbee vs OG
2018/04/01 DOTA
教你如何在Django 1.6中正确使用 Signal
2014/06/22 Python
python实现的一个火车票转让信息采集器
2014/07/09 Python
Python THREADING模块中的JOIN()方法深入理解
2015/02/18 Python
Python函数式编程指南(一):函数式编程概述
2015/06/24 Python
Python使用Redis实现作业调度系统(超简单)
2016/03/22 Python
Python 装饰器深入理解
2017/03/16 Python
Python操作SQLite数据库的方法详解
2017/06/16 Python
解决tensorflow1.x版本加载saver.restore目录报错的问题
2018/07/26 Python
Python中几种属性访问的区别与用法详解
2018/10/10 Python
Python遍历字典方式就实例详解
2019/12/28 Python
Pytorch to(device)用法
2020/01/08 Python
Tory Burch美国官方网站:美国时尚生活品牌
2016/08/01 全球购物
美国全球旅游运营商:Pacific Holidays
2018/06/18 全球购物
应届生服务员求职信
2013/10/31 职场文书
2013的个人自我评价
2013/12/26 职场文书
《最后的姿势》教学反思
2014/02/27 职场文书
经济管理毕业生求职信
2014/03/15 职场文书
中学生操行评语大全
2014/04/24 职场文书
公司优秀员工推荐信
2015/03/24 职场文书
2015秋季田径运动会广播稿
2015/08/19 职场文书
ORM模型框架操作mysql数据库的方法
2021/07/25 MySQL
MySQL 数据库 增删查改、克隆、外键 等操作
2022/05/11 MySQL