vuejs如何实现复制粘贴功能

792 ℃

vuejs如何实现复制粘贴功能,下面web建站小编给大家详细介绍一下实现代码!

新建copy.js的文件

const vCopy = {
  bind(el, { value }) {
    el.$value = value;
    el.handler = () => {
      if (!el.$value) {
       console.log('无复制内容');
        return;
      }
      const textarea = document.createElement('textarea');
      textarea.readOnly = 'readonly';
      textarea.style.position = 'absolute';
      textarea.style.left = '-9999px';

      textarea.value = el.$value;
      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);
    };

    el.addEventListener('click', el.handler);
  },

  componentUpdated(el, { value }) {
    el.$value = value;
  },

  unbind(el) {
    el.removeEventListener('click', el.handler);
  },
};
export default vCopy;

新建directives.js文件

import copy from './copy.js';

// 自定义指令
const directives = {
  copy,
};

export default {
  install(Vue) {
    Object.keys(directives).forEach((key) => {
      Vue.directive(key, directives[key]);
    });
  },
};

main.js全局引入

import Vue from 'vue';
import Directives from './directives';
Vue.use(Directives);

页面调用

<template>
  <div >
    <button v-copy="copyText">拷贝</button>
  </div>
</template>
<script>
  export default {
    data(){
      return {
        copyText:'要copy的内容'
      }
    },
    methods: {
      init () {
      },
    },
    mounted () {
      _this = this;
      _this.init();
    },
  }
</script>

Excel如何实现数据的复制粘贴

vuejs实现el-input复制粘贴功能

javaScript如何复制粘贴指定标签中的内容

苹果笔记本黏贴失败解决方法

标签: 复制粘贴

上面是“vuejs如何实现复制粘贴功能”的全面内容,想了解更多关于 vuejs 内容,请继续关注web建站教程。

当前网址:https://m.ipkd.cn/webs_3057.html

声明:本站提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请发送到邮箱:admin@ipkd.cn,我们会在看到邮件的第一时间内为您处理!

Java开发如何利用高德地图api解析并显示天气信息
如何防御DDOS攻击?
DEDE织梦CMS模板在runphp=yes的标签中调用其他field值
seo总监应具备哪些能力(图文)
利用纯js实现表格全选功能