当前位置: 首页 > news >正文

Vue学习穿梭框Transfer组件

Vue学习Transfer组件

  • 一、前言
    • 1、案例一
    • 2、案例二


一、前言

在 Vue 3 中使用 el-transfer 组件可以帮助你实现数据的穿梭功能,让用户可以将数据从一个列表转移到另一个列表。下面是一个简单示例,演示如何在 Vue 3 中使用 el-transfer 组件:

首先,确保你的项目中已经安装了 Element Plus 组件库,因为 el-transfer 是 Element Plus 提供的组件之一。如果没有安装,你可以通过以下命令进行安装:

1、案例一

然后,在你的 Vue 组件中,你可以像这样使用 el-transfer 组件:

<template><el-transferv-model:modelValue="value":data="data":titles="['Source', 'Target']"@change="handleChange"></el-transfer>
</template><script setup>
import { ref } from "vue";const value = ref([]);
const data = ref([{key: 1,label: "Option 1",},{key: 2,label: "Option 2",},{key: 3,label: "Option 3",},{key: 4,label: "Option 4",},
]);const handleChange = (val) => {console.log("Change", val);
};
</script>

在这个示例中,我们首先导入 ElTransfer 组件,并在 setup 函数中初始化了 valuedata 这两个响应式变量。然后在模板中,我们使用 el-transfer 组件,并将 valuedata 分别绑定到 v-model:modelValue:data 属性上。同时,我们定义了 titles 属性来指定左右两侧列表的标题,并监听了 change 事件来处理数据变化时的逻辑。
在这里插入图片描述

2、案例二

读取右移动值

<template><el-transferv-model="transferData":data="dataArray"filterable:titles="['待选区域', '选择区域']"@change="handleChange"></el-transfer>
</template><script setup>
import { ref } from "vue";const transferData = ref([]);
const dataArray = ref([{key: 1,label: "Option 1",},{key: 2,label: "Option 2",},{key: 3,label: "Option 3",},
]);function handleChange(value, direction, movedKeys) {//     console.log("Transfer dataArray changed:", dataArray);//     console.log("Transfer transferData changed:", transferData);//     console.log("Transfer value changed:", value);//     console.log("Transfer direction changed:", direction);//     console.log("Transfer movedKeys changed:", movedKeys);const keys = value;const keyValues = dataArray._rawValue;let values = [];keys.forEach(function (keyToFind) {const foundItem = keyValues.find((item) => item.key === keyToFind);values.push(foundItem.label);});console.log(values);
}
</script>

在这里插入图片描述


  1. 永远不要低估自己的潜力,只有敢于挑战自我,才能发掘无限可能。
  2. 人生的价值,在于创造贡献。每一个坚定的信念,都是一份力量。
  3. 成功并不是终点,而是一段旅程。在这个旅程中,我们要保持耐心、信心和坚持,这才是取得胜利的关键。
  4. 人生就像跑步,要有一个清晰的目标,才有动力奔跑;要有一个良好的心态,才能走得更远。
  5. 拥有梦想是一种幸福,实现梦想是一种成就。只要我们把握机会,坚持努力,就能迈向成功的道路。
  6. 没有什么比坚持更重要,因为坚持可以让我们拥有改变命运的力量。
  7. 成功需要的不仅是勇气和决心,还需要智慧和耐性。只有在不断学习和成长的过程中,才能让自己更加优秀。
  8. 生活中最大的敌人是自己的内心,只有克服了自己,才能迎来真正的成功。
  9. 每一次坚持都是一次积累,每一次付出都是一份珍贵的经验。只有不断前行,才能让自己更加强大。
  10. 人生路上,没有天生的强者,只有那些不屈不挠的人最终成就了非凡的自己。所以,让我们一起勇往直前,追逐成功的光芒!

相关文章:

  • 贪心算法:划分字母区间
  • 包装类..
  • 如何彻底搞懂迭代器(Iterator)设计模式?
  • 反序列化漏洞(JBoss、apache log4、apache Shiro、JWT)Weblogic未授权访问、代码执行、任意上传
  • 《QT实用小工具·六十五》基于QPropertyAnimation实现的移动动画和控件覆盖
  • 内网安全之搭建ADCS证书服务
  • C++ 时间处理-从字符串中解析日期时间
  • 中银基金软件开发工程师春招群面记录
  • 网络安全之BGP详解
  • 通过管理系统完成商品属性维护
  • vue3 + antd-vue@4 a-table单元格合并,rowSpan(行合并),colSpan(列合并)详解, 表头合并详解, 表头自定义详解
  • docker 配置文件使用经验,后续持续增加
  • 设计模式7——建造者模式
  • 保护共享资源的方法(互斥锁)
  • Spring框架中获取方法参数名称:DefaultParameterNameDiscoverer
  • cookie和session
  • CSS盒模型深入
  • JavaScript的使用你知道几种?(上)
  • Joomla 2.x, 3.x useful code cheatsheet
  • js操作时间(持续更新)
  • JS创建对象模式及其对象原型链探究(一):Object模式
  • Making An Indicator With Pure CSS
  • vagrant 添加本地 box 安装 laravel homestead
  • 爬虫模拟登陆 SegmentFault
  • 扑朔迷离的属性和特性【彻底弄清】
  • 栈实现走出迷宫(C++)
  • #中的引用型是什么意识_Java中四种引用有什么区别以及应用场景
  • $emit传递多个参数_PPC和MIPS指令集下二进制代码中函数参数个数的识别方法
  • $nextTick的使用场景介绍
  • (26)4.7 字符函数和字符串函数
  • (55)MOS管专题--->(10)MOS管的封装
  • (C++17) optional的使用
  • (九十四)函数和二维数组
  • (未解决)jmeter报错之“请在微信客户端打开链接”
  • (一一四)第九章编程练习
  • .gitattributes 文件
  • .NET 中什么样的类是可使用 await 异步等待的?
  • .NET版Word处理控件Aspose.words功能演示:在ASP.NET MVC中创建MS Word编辑器
  • .net用HTML开发怎么调试,如何使用ASP.NET MVC在调试中查看控制器生成的html?
  • @Autowired自动装配
  • [ IOS ] iOS-控制器View的创建和生命周期
  • [120_移动开发Android]008_android开发之Pull操作xml文件
  • [20160902]rm -rf的惨案.txt
  • [2019.2.28]BZOJ4033 [HAOI2015]树上染色
  • [2019.3.5]BZOJ1934 [Shoi2007]Vote 善意的投票
  • [AIGC] 开源流程引擎哪个好,如何选型?
  • [Android] 修改设备访问权限
  • [BZOJ4554][TJOI2016HEOI2016]游戏(匈牙利)
  • [CSS] 点击事件触发的动画
  • [FreeRTOS 基础知识] 栈
  • [IDF]聪明的小羊
  • [iOS]把16进制(#871f78)颜色转换UIColor
  • [JavaWeb玩耍日记]Maven的安装与使用
  • [linux学习]apt-get参数解析
  • [Noi2015]程序自动分析