首页 > 其他分享 >Vue3多条数据复制功能,复制内容用逗号拼接

Vue3多条数据复制功能,复制内容用逗号拼接

时间:2023-07-27 16:48:25浏览次数:41  
标签:personDiv const 逗号 复制 str Vue3 input document

       <div class="person-list">
              <div class="person-item">9939939939399399</div>
              <div class="person-item">1111111111111111</div>
            </div>
            <el-icon class="allow-point copy-icon" @click="handleCopy">
              <DocumentCopy
            /></el-icon>
.person-list {
  padding: 10px 24px;
  width: 300px;
  max-height: 160px;
  border-radius: 4px;
  border: 1px solid #e6ecf5;
  line-height: 1.5;
  cursor: pointer;
  position: relative;
}
.copy-icon {
  &:hover {
    color: var(--el-color-primary);
  }
}
// 复制
const handleCopy = (val: any) => {
  const input = document.createElement('input'); // 创建input对象
  const personDiv = document.querySelectorAll('.person-list .person-item'); // 获取需要复制文字的容器
  let str = '';
  for (let i = 0; i < personDiv.length; i++) {
    if (i < personDiv.length - 1) {
      str += personDiv[i].innerText + ',';
    } else {
      str += personDiv[i].innerText;
    }
  }
  input.value = str; // 设置复制内容
  document.body.appendChild(input); // 添加临时实例
  input.select(); // 选择实例内容
  document.execCommand('Copy'); // 执行复制
  document.body.removeChild(input); // 删除临时实例
  ElMessage({
    message: '复制成功',
    type: 'success',
    customClass: 'copy-el-message',
  });
};

效果:

 

 

标签:personDiv,const,逗号,复制,str,Vue3,input,document
From: https://www.cnblogs.com/rachelch/p/17585326.html

相关文章

  • Vue3的响应式数据处理方式
    问题:data[0].tableId是undefined,但控制台可以打印出data[0]的值原因: Vue3的响应式数据处理方式导致的。Vue3使用了Proxy来实现响应式数据。当你访问一个响应式对象的属性时,Vue会在底层进行拦截,并返回响应式的值。这意味着,当你访问`data[0].TableId`时,Vue会返回......
  • vue3实现图片滚动播放
    <template> <divclass="swiperBox">  <divid="swiper">   <divclass="imgBox"@mouseenter="mouseenter"@mouseleave="mouseleave">    <av-for="(x,i)inLinkList&......
  • vue2和vue3的区别
    1.性能提升vue3对性能进行了优化,相较于vue2,在运行时的性能更高。vue3采用了Proxy代理机制,使得在数据变化时可以更快的更新视图,从而提供了更好的响应性能。2.ComposiitonAPI(组合式API)vue3引入了CompsitionAPI,这是一种新的API风格,它允许开发者更好的组织和重用代码。相比于......
  • vue3状态管理工具Pinia的使用
    1.安装  npminstallpinia--save 2.src文件夹下新建store文件夹,并新建index.tsimport{createPinia}from'pinia'constpinia=createPinia()exportdefaultpinia2.在main.ts中引入piniaimportpiniafrom'./store'import{createApp}from'vue'......
  • vue3中的watch与vue2中的watch的对比
    新版的 watch 和旧版对比,在使用方式上变化非常大!旧版是这样用的,和 data 、 methods 都在同级配置://旧版的写法:exportdefault{watch:{//...},data(){return{//...}},methods:{//...}} 新版的 watch......
  • Linux对文件夹操作(复制,移动)
    复制文件夹cpcp-avuevue-copy将vue文件夹下面的所有文件,复制到同目录下vue-copy文件夹下面-a:相当于-d、-p、-r选项的集合,这几个选项我们一一介绍;-d:如果源文件为软链接(对硬链接无效),则复制出的目标文件也为软链接;-i:询问,如果目标文件已经存在,则会询问是否覆盖;-l:把目......
  • mysql当一个字段以逗号隔开存多个名字,用sql取这个名字对应的id并修改
    当前有两个表,class班级表和student学生表  需求:我们需要把class班级表的student_ids中的name,改成student的id这里我们可以用“find_in_set”函数--注意s.name要在前面selectc.id,c.CLASS_NAME,GROUP_CONCAT(s.id)ascount,c.STUDENT_NAMESfromclasscleftjoinstu......
  • 数据复制区分-7.26
    浅拷贝和深拷贝,浅克隆和深克隆在绝大多数情况下是同一概念。浅克隆和浅拷贝都指的是对象的浅复制操作,只复制对象的引用而不复制内部包含的其他对象。产生的各种误解多是对数据存储区域的划分和国内教材对指针和引用这里垃圾概念的提出。java中有基本数据类型和引用数据类型,基本......
  • dd命令:复制(拷贝)文件,并对原文件进行转换
    dd,是devicedriver的缩写,它可以称得上是“Linux世界中的搬运工”,它用来读取设备、文件中的内容,并原封不动地复制到指定位置。当我们用dd命令读取/dev/null文件时,就可以创造出空洞文件,而如果你的磁盘足够大,你甚至可以创造出一个宇宙黑洞呢!备份磁盘并恢复好记性不如烂笔头......
  • SqlServer将数据库中的表复制到另一个数据库;SqlServer怎样把一个数据库的数据复制粘贴
     一.复制表结构1.首先,打开并连接SqlServer,在源数据库Source_db(源数据库名称)上右键,然后依次点击“编写表脚本为”→“Create到”→“新查询编辑器窗口”。 2.在第1步产生的编辑器中按”crtl+a“组合键全选内容,然后右键“复制“(或按"crtl+c"键)。 3.新建查询,然后右键”粘......