vue动态表单及移动

news/2025/1/16 1:55:13/

实现一个动态表单,支持新增移动删除
代码如下:

 <el-formref="form":model="grid"label-width="60px"style="width: 350px"><divv-for="(item, index) in list":key="item.type + index"class="area-config-form"><el-form-item label="类型" prop="type"><el-selectv-model="item.type"clearable:data="typeList"></bs-select></el-form-item><el-form-item label="标题" prop="title"><el-inputv-model="item.title"placeholder="请输入"></el-input></el-form-item><el-form-itemlabel="内容"prop="content"><el-inputv-model="item.content"type="textarea"placeholder="请输入"></el-input></el-form-item><div style="text-align: center"><el-buttonv-if="index !== 0"size="mini"icon="el-icon-top"@click="moveUp(index)"></el-button><el-buttonv-if="index !== list.length - 1"size="mini"icon="el-icon-bottom"@click="moveDown(index)"></el-button><el-buttonsize="mini"icon="el-icon-delete"@click="handleDelete(index)"></el-button></div></div></el-form><el-buttonsize="small"type="primary"style="width: 100%":icon="uiSetting.icon.addRow"@click="onAdd">新增</el-button>

js代码:

methods: {// 生成新数据generateNewData() {const data = {type: null,title: null,content: null,}return data},// 增加一行onAdd() {this.list.push(this.generateNewData())},// 删除当前行handleDelete(index) {this.$confirm2.warning('确定删除当前数据吗?').then(() => {this.list.splice(index, 1)}).catch(() => {})},// 上移moveUp(index) {if (index <= 0) returnconst temp = this.list[index]this.$set(this.list, index, this.list[index - 1])this.$set(this.list, index - 1, temp)},// 下移moveDown(index) {if (index >= this.list.length - 1) returnconst temp = this.list[index]this.$set(this.list, index, this.list[index + 1])this.$set(this.list, index + 1, temp)}}

效果图:
在这里插入图片描述


http://www.ppmy.cn/news/1400231.html

相关文章

工厂能耗管控物联网解决方案

工厂能耗管控物联网解决方案 工厂能耗管控物联网解决方案是一种创新的、基于先进技术手段的能源管理系统&#xff0c;它深度融合了物联网&#xff08;IoT&#xff09;、云计算、大数据分析以及人工智能等前沿科技&#xff0c;以实现对工业生产过程中能源消耗的实时监测、精确计…

Android JNI开发定义全局变量

要在 C 文件中设置一个 string 类型的全局变量&#xff0c;让其他 C 文件都可以访问&#xff0c;并且可以通过 JNI 方法修改这个变量&#xff0c;可以按照以下步骤进行操作 定义全局变量&#xff1a; 在一个头文件&#xff08;比如 common.h&#xff09;中定义一个全局的 strin…

零基础如何学Python?这些方法你一定要知道

由于python在人工智能&#xff0c;机器学习&#xff0c;大数据&#xff0c;数据分析&#xff0c;网络爬虫&#xff0c;全方位的技能特点&#xff0c;是非常适合初学者入门和培养编程兴趣的一门语言。相比较其他不少主流编程语言&#xff0c;有更好的可读性和满足感&#xff0c;…

使用kfed运维兵器修复ASM磁盘和磁盘组

欢迎关注“数据库运维之道”公众号&#xff0c;一起学习数据库技术! 本期将为大家分享“使用kfed运维兵器修复ASM磁盘和磁盘组” 的运维技能。 关键词&#xff1a;ORA-15053、ORA-15027、ORA-15040、ORA-01187、kfed repair、kfed merge、kfed read、strace 数据库的ASM磁盘或…

使用Python创建井字棋游戏

井字棋&#xff0c;又称为Tic-Tac-Toe&#xff0c;是一款经典的两人游戏。玩家轮流在3x3的网格中标记“X”或“O”&#xff0c;谁先将三个标记连成一线&#xff0c;就赢得了游戏。这个简单而又引人入胜的游戏是初学者学习编程的绝佳项目&#xff0c;因为它涉及到了许多基本的编…

【MySQL】DQL-基础查询-语句&演示(查询多个字段 / 所有字段/并设置别名/去重)

前言 大家好吖&#xff0c;欢迎来到 YY 滴MySQL系列 &#xff0c;热烈欢迎&#xff01; 本章主要内容面向接触过C Linux的老铁 主要内容含&#xff1a; 欢迎订阅 YY滴C专栏&#xff01;更多干货持续更新&#xff01;以下是传送门&#xff01; YY的《C》专栏YY的《C11》专栏YY的…

shell脚本执行需要sudo权限的命令,如何避免人工输入密码

脚本代码可以这样写&#xff1a; 该命令在Unix或Linux系统中用于以超级用户&#xff08;root&#xff09;权限执行命令&#xff0c;而不需要通过标准的sudo密码提示手动输入密码。具体解释如下&#xff1a; echo "password" | sudo -S command echo "passwor…

Xilinx浮点处理IP使用说明和测试

Xilinx浮点处理IP使用说明和测试 1 浮点数标准2 IP接口信号3 Python计算4 Vivado仿真本文主要介绍Xilinx浮点数处理IP Floating-point的使用和测试方法。 1 浮点数标准 浮点数的定义遵循IEEE-754标准,32位浮点数定义如下。 1位符号位(S):0表示正数,1表示负数8位指数位(E):…