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

若依 ruoyi 分离版 vue 简单的行内编辑实现

需要实现的效果:双击文本  -  修改文本  -  保存修改。

 

 原码:仅文本显示文字内容

<el-table-column label="商品" align="center" prop="goodsName" width="200" v-if="columns[1].visible" />

 实现双击文本、修改文本:

在上面源码基础上进行编辑,新增如下

修改后代码:

      <el-table-column label="商品" align="center" prop="goodsName" width="200" v-if="columns[1].visible"><template slot-scope="scope"><span v-if="!scope.row.isEditing" @dblclick="startEditing(scope.$index, scope.row)">{{scope.row.goodsName}}</span><span v-else><el-input v-model="scope.row.goodsName" @blur="stopEditing(scope.$index, scope.row)"/></span></template></el-table-column>

行内文本框的双击事件、失去焦点事件:

    startEditing(index, row) {// 启用编辑模式:设置当前行的isEditing属性值为true,使用 this.$set 同步更新视图为文本框this.$set(row, 'isEditing', true);},stopEditing(index, row) {// 禁用编辑模式:设置当前行的isEditing属性值为false,使用 this.$set 同步更新视图为文本this.$set(row, 'isEditing', false);console.info(row);console.info(row.id);console.info(row.goodsId);console.info(row.goodsName);// 这里可以添加保存或其他逻辑// 调用接口,更新数据}

后端数据集合对象中,新增属性 isEditing

总体参考代码:

<template>  <el-table :data="tableData">  <el-table-column label="商品" align="center" width="200">  <template slot-scope="scope">  <span  v-if="!scope.row.isEditing"  @dblclick="startEditing(scope.$index, scope.row)"  >  {{ scope.row.goodsName }}  </span>  <el-input  v-else  v-model="scope.row.goodsName"  @blur="stopEditing(scope.$index, scope.row)"  />  </template>  </el-table-column>  <!-- 其他列... -->  </el-table>  
</template>  <script>  
export default {  data() {  return {  tableData: [  { goodsName: '商品1', isEditing: false },  { goodsName: '商品2', isEditing: false },  // ... 其他数据  ],  };  },  methods: {  startEditing(index, row) {  this.$set(row, 'isEditing', true); // 启用编辑模式  },  stopEditing(index, row) {  this.$set(row, 'isEditing', false); // 禁用编辑模式  // 这里可以添加保存或其他逻辑  },  },  
};  
</script>

其他 

1. 想要一体版的,看这里 https://blog.csdn.net/torpidcat/article/details/101369733

2. vue-ele-editable   适用原生vue

https://github.com/dream2023/vue-ele-editable


 

http://www.lryc.cn/news/386510.html

相关文章:

  • 【工具】API文档生成DocFX
  • 在 JavaScript 中处理异步操作和临时事件处理程序
  • [Cocos Creator] v3.8开发知识点记录(持续更新)
  • Excel_VBA编程
  • Java中的Path类使用详解及最佳实践
  • 生成和查看预定义宏
  • Redis 7.x 系列【12】数据类型之基数统计(HyperLogLog)
  • 开源大模型RAG企业本地知识库问答机器人-ChatWiki
  • 基于Java的蛋糕预定系统【附源码+LW】
  • Java框架的原理主要基于以下几个核心
  • 已解决javax.xml.bind.MarshalException:在RMI中,参数或返回值无法被编组的正确解决方法,亲测有效!!!
  • 仓库管理系统17--客户管理
  • 笔记本重装系统怎么操作? windows电脑重装系统,超实用的四种方法
  • 【高考志愿】计算机
  • 使用ExpandableListView创建可扩展列表
  • 酒店新零售模式,亚朵酒店众筹模式, 社交新零售商业模式
  • 2010-2023年 省级、地级市、地市州盟保障性住房面积数据
  • Java 语言特定指南
  • 国内多个库被 rsc 钉上 Go 耻辱柱。。。
  • elasticsearch源码分析-03选举集群状态
  • MySQL 重要参数优化
  • 软件测试之接口测试(Postman/Jmeter)
  • 14 卡尔曼滤波及代码实现
  • 计算机视觉 图像融合技术概览
  • 计算机网络课程实训:局域网方案设计与实现(基于ensp)
  • 【安全开发】内网扫描器
  • ESP32-C3模组上跑通MQTT(5)
  • Arduino - LED 矩阵
  • 设计模式 - Observer Pattern 观察者模式
  • 【面试系列】C++ 高频面试题