vuejs에서 복사 기능을 구현하는 방법: 1. copyComm.js 파일을 생성합니다. 2. directives.js 파일을 생성하여 모든 전역 명령어를 등록합니다. 3. "return{copyText:'...'}를 통해 구현합니다. "그냥 복사해 보세요.
이 기사의 운영 환경: Windows 7 시스템, vue 버전 2.9.6, DELL G3 컴퓨터.
vuejs에서 복사 기능을 어떻게 구현하나요?
vue.js는 원클릭 복사 기능을 구현합니다
1. 먼저 copyComm.js 파일을 만듭니다
const vCopy = { // 名字爱取啥取啥 /* bind 钩子函数,第一次绑定时调用,可以在这里做初始化设置 el: 作用的 dom 对象 value: 传给指令的值,也就是我们要 copy 的值 */ bind(el, { value }) { el.$value = value; // 用一个全局属性来存传进来的值,因为这个值在别的钩子函数里还会用到 el.handler = () => { if (!el.$value) { // 值为空的时候,给出提示,我这里的提示是用的 ant-design-vue 的提示,你们随意 console.log('无复制内容'); return; } // 动态创建 textarea 标签 const textarea = document.createElement('textarea'); // 将该 textarea 设为 readonly 防止 iOS 下自动唤起键盘,同时将 textarea 移出可视区域 textarea.readOnly = 'readonly'; textarea.style.position = 'absolute'; textarea.style.left = '-9999px'; // 将要 copy 的值赋给 textarea 标签的 value 属性 textarea.value = el.$value; // 将 textarea 插入到 body 中 document.body.appendChild(textarea); // 选中值并复制 textarea.select(); textarea.setSelectionRange(0, textarea.value.length); const result = document.execCommand('Copy'); if (result) { console.log('复制成功'); } document.body.removeChild(textarea); }; // 绑定点击事件,就是所谓的一键 copy 啦 el.addEventListener('click', el.handler); }, // 当传进来的值更新的时候触发 componentUpdated(el, { value }) { el.$value = value; }, // 指令与元素解绑的时候,移除事件绑定 unbind(el) { el.removeEventListener('click', el.handler); }, }; export default vCopy;
2. 이제 directives.js 파일을 만들어 모든 전역 명령어를 등록합니다
import copy from './copyComm.js'; // 自定义指令 const directives = { copy, }; // 这种写法可以批量注册指令 export default { install(Vue) { Object.keys(directives).forEach((key) => { Vue.directive(key, directives[key]); }); }, };
3. main.js에 등록
import Vue from 'vue'; import Directives from './directives'; Vue.use(Directives);
4, vue 파일 사용
<template> <div > <button v-copy="copyText">拷贝</button> </div> </template> <script> export default { data(){ return { copyText:'要copy的内容' } }, methods: { init () { }, }, watch: {}, props: [], components: {}, computed: {}, mounted () { _this = this; _this.init(); }, } </script>
추천: "최신 5개 vue.js 비디오 튜토리얼 선택"
위 내용은 vuejs에서 복사 기능을 구현하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!