vue3项目中新增修改时使用nextTick时遇到的问题
前提
页面是个列表页,需要实现增删改查,新增和修改使用表单提交
关键代码如下
// html部分,新增、修改的表单
<el-dialogv-model="dialogVisible2":title="addTitle"width="600"class="update-shujuji-dialog"><el-form :model="addForm" :rules="rules" label-width="auto" style="max-width: 600px" ref="formRef"><el-form-item label="字典类型" prop="dictType"><el-select v-model="addForm.dictType" :disabled="true"><el-option :label="item.dictType":value="item.dictType" v-for="item in selectList" :key="item.dictType"></el-option></el-select></el-form-item><el-form-item label="数据标签" prop="dictLabel"><el-input v-model="addForm.dictLabel" placeholder="数据标签"/></el-form-item><el-form-item label="数据键值" prop="dictValue"><el-input v-model="addForm.dictValue" placeholder="数据键值"/></el-form-item><el-form-item label="样式属性" prop="cssClass"><el-input v-model="addForm.cssClass" placeholder="样式属性"/></el-form-item><el-form-item label="显示排序"><el-input-number v-model="addForm.dictSort" controls-position="right" :min="0" :max="1000"></el-input-number></el-form-item><el-form-item label="回显样式"><el-select v-model="addForm.listClass"><el-option :label="item.label":value="item.value" v-for="item in huixianStyle" :key="item.value"></el-option></el-select></el-form-item><el-form-item label="备注"><el-input type="textarea" v-model="addForm.remark"></el-input></el-form-item></el-form><template #footer><div class="dialog-footer"><el-button @click="dialogVisible2 = false">取消</el-button><el-button type="primary" @click="addDictionaryDataFn">确定</el-button></div></template></el-dialog>// js部分import {onMounted, reactive, toRefs, ref, getCurrentInstance, watch, nextTick } from "vue";export default {name: "autoLabel",components: {},setup(props) {const formRef = ref(null);const state = reactive({dialogVisible2: false,addForm: {},addTitle: '新增字典类型',rules: {dictLabel: [{ required: true, message: '数据标签不能为空', trigger: 'blur' }],dictValue: [{ required: true, message: '数据键值不能为空', trigger: 'blur' }]}})// 修改const update = (row) => {state.addTitle = '修改字典类型';state.dialogVisible2 = true;nextTick(() => {proxy.$refs.formRef.resetFields();})let { dictCode, dictLabel, dictType, dictValue, cssClass, dictSort, remark, listClass } = row;state.addForm = { dictCode, dictLabel, dictType, dictValue, cssClass, dictSort, remark, listClass }// 修改时回显数据}}}
遇到的问题
乍一看以上代码,逻辑上没问题,但是修改数据后,刷新列表,发现,列表数据确实是修改后的了,此时再次点击修改,会发现修改弹框中的数据并没有更新,还是以前的旧数据,很费解。最后才发现问题所在,修改时给表单赋值回显时需要写在nextTick里,如下
// 修改const update = (row) => {state.addTitle = '修改字典类型';state.dialogVisible2 = true;nextTick(() => {let { dictCode, dictLabel, dictType, dictValue, cssClass, dictSort, remark, listClass } = row;state.addForm = { dictCode, dictLabel, dictType, dictValue, cssClass, dictSort, remark, listClass }// 修改时回显数据proxy.$refs.formRef.resetFields();})}}
相关文章:
vue3项目中新增修改时使用nextTick时遇到的问题
前提 页面是个列表页,需要实现增删改查,新增和修改使用表单提交 关键代码如下 // html部分,新增、修改的表单 <el-dialogv-model"dialogVisible2":title"addTitle"width"600"class"update-shujuji-d…...
算法训练 | 二叉树Part7 | 530.二叉搜索树的最小绝对差、501.二叉搜索树中的众数
目录 530.二叉搜索树的最小绝对差 数组法 双指针法 ⭐ 迭代法 501.二叉搜索树中的众数 双指针法 迭代法 530.二叉搜索树的最小绝对差 题目链接:530. 二叉搜索树的最小绝对差 - 力扣(LeetCode) 文章讲解:代码随想录 数组…...
C++面向对象程序设计 - 标准输出流
在C中,标准输出流通常指的是与标准输出设备(通常是终端或控制台)相关联的流对象。这个流对象在C标准库中被定义为std::cout、std::err、std::clog,它们是std::ostream类的一个实例。 一、cout,cerr和clog流 ostream类…...
警惕Mallox勒索病毒的最新变种hmallox,您需要知道的预防和恢复方法。
引言 : 在数字化时代,数据已成为企业和个人最宝贵的资产之一。然而,随着技术的不断发展,网络威胁也日益猖獗,其中.hmallox勒索病毒以其独特的加密手段和狡猾的传播方式,成为了网络安全领域的一颗“隐形炸弹…...
2024年华为OD机试真题-火星文计算-C++-OD统一考试(C卷D卷)
题目描述: 已知火星人使用的运算符为#、$,其与地球人的等价公式如下: x#y = 4*x+3*y+2 x$y = 2*x+y+3 1、其中x、y是无符号整数 2、地球人公式按C语言规则计算 3、火星人公式中,#的优先级高于$,相同的运算符,按从左到右的顺序计算 现有一段火星人的字符串报文,请…...
3.00001 postgres如何初始化系统参数?
文章目录 加载参数整体流程参数结构举例:ConfigureNamesBool 初始化参数 InitializeGUCOptionsbuild_guc_variablesInitializeOneGUCOptionInitializeGUCOptionsFromEnvironment 命令行添加SelectConfigFiles配置 加载参数整体流程 我们先看下guc参数是如何管理的。…...
C# 读取 CSV 文件的方法汇总
文章目录 1. 使用System.IO命名空间中的类2. 处理标题行和指定列3. 使用CsvHelper库4. 高级功能和异常处理5. 使用 LINQ6. 总结 CSV(Comma-Separated Values,逗号分隔值)文件是一种简单的文本文件格式,用于存储表格数据。在C#中&a…...
element+ 引入图标报错 Failed to resolve import “@element-plus/icons-vue“ from “
element 引入图标报错 Internal server error: Failed to resolve import “element-plus/icons-vue” from “src\components\TimeLine.vue”. Does the file exist? 原因:element-plus需要单独引入 icons 文档 pnpm install element-plus/icons-vue之后就可以…...
Github 2024-05-25 开源项目日报 Top10
根据Github Trendings的统计,今日(2024-05-25统计)共有10个项目上榜。根据开发语言中项目的数量,汇总情况如下: 开发语言项目数量Python项目3TypeScript项目3非开发语言项目1HTML项目1Rust项目1Go项目1Jupyter Notebook项目1Java项目1Angular文档:交付Web应用程序的自信之选…...
VPN的详细理解
VPN(Virtual Private Network,虚拟私人网络)是一种在公共网络上建立加密通道的技术,通过这种技术可以使远程用户访问公司内部网络资源时,实现安全的连接和数据传输。以下是对VPN的详细介绍: 选择代理浏览器…...
java后端轮播图的设计
对于表示轮播图位置这种有限且较小范围的数据,一般可以使用整数类型来表示。考虑到位置序号一般是非负整数且数量较少,可以选择使用小范围的整数类型,如下: 整数类型: 对于Java中,可以考虑使用 int 类型来表示位置序号…...
upload-labs 21关解析
目录 一、代码审计 二、实践 三、总结 一、代码审计 $is_upload false; $msg null; if(!empty($_FILES[upload_file])){//检查MIME$allow_type array(image/jpeg,image/png,image/gif);if(!in_array($_FILES[upload_file][type],$allow_type)){$msg "禁止上传该类型…...
常用汇编指令
(arg)argument:自变量,变元 (reg)register:寄存器 (seg)segment:段寄存器 (mem)memory:存储器(内存单元&am…...
LabVIEW软件需求分析文档内容和编写指南
编写LabVIEW软件需求分析文档(Software Requirements Specification, SRS)是软件开发的关键步骤之一。以下是详细的内容结构、编写指南和注意事项: 内容结构 引言 项目背景:简要介绍项目背景和目的。 文档目的:说明需…...
spring cache(三)demo
目录 一、入门demo 1、pom 2、配置文件 3、config 4、controller 5、service 6、dao 7、dto与常量 8、测试: 8.1、无参 8.2、单参 (1)缓存与删除缓存 (2)删除缓存加入异常 二、自定义删除key 1、pom 2、…...
Android 应用开发语言选择对比
Android开发语言有多种,但是每种语言的各有不同的适用场景,对比介绍如下: 一.首选:原生应用Java,Kotlin 1.截至目前,大约有70%的Android开发者仍然使用Java语言进行开发,而30%的开发者则选择…...
Git 小白入门到进阶—(基本概念和常用命令)
一.了解 Git 基本概念和常用命令的作用 (理论) 基本概念 1、工作区 包含.git文件夹的目录,主要用存放开发的代码2、仓库 分为本地仓库和远程仓库,本地仓库是自己电脑上的git仓库(.git文件夹);远程仓库是在远程服务器上的git仓库git文件夹无需我们进行操…...
大数据框架总结(全)
☔️ 大数据框架总结(全) 关注“大数据领航员”,在公众号号中回复关键字【大数据面试资料】,即可可获取2024最新大数据面试资料的pdf文件 一. Hadoop HDFS读流程和写流程 HDFS写数据流程 (1)客户端通过…...
44、Flink 的 Interval Join 详解
Interval Join Interval join 组合元素的条件为:两个流(暂时称为 A 和 B)中 key 相同且 B 中元素的 timestamp 处于 A 中元素 timestamp 的一定范围内,即 b.timestamp ∈ [a.timestamp lowerBound; a.timestamp upperBound] 或…...
H6246 60V降压3.3V稳压芯片 60V降压5V稳压芯片IC 60V降压12V稳压芯片
H6246降压稳压芯片是一款电源管理芯片,为高压输入、低压输出的应用设计。以下是对该产品的详细分析: 一、产品优势 宽电压输入范围:H6246支持8V至48V的宽电压输入范围,使其能够适应多种不同的电源环境,增强了产品的通用…...
CANN/asc-devkit量化API文档
GetAscendDequantMaxMinTmpSize 【免费下载链接】asc-devkit 本项目是CANN 推出的昇腾AI处理器专用的算子程序开发语言,原生支持C和C标准规范,主要由类库和语言扩展层构成,提供多层级API,满足多维场景算子开发诉求。 项目地址: …...
如何快速掌握UESave:3个高效编辑游戏存档的秘诀
如何快速掌握UESave:3个高效编辑游戏存档的秘诀 【免费下载链接】uesave Rust library and CLI to read and write Unreal Engine save files 项目地址: https://gitcode.com/gh_mirrors/ue/uesave 你是否曾因游戏存档损坏而失去珍贵的游戏进度?是…...
LuaJIT反编译终极解决方案:LJD工具深度解析与实战指南
LuaJIT反编译终极解决方案:LJD工具深度解析与实战指南 【免费下载链接】luajit-decompiler https://gitlab.com/znixian/luajit-decompiler 项目地址: https://gitcode.com/gh_mirrors/lu/luajit-decompiler 你是否曾面对LuaJIT编译后的字节码文件束手无策&a…...
Python开发者三步完成Taotoken接入并运行第一个AI对话
🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 Python开发者三步完成Taotoken接入并运行第一个AI对话 对于希望快速将大模型能力集成到Python项目中的开发者而言,找到…...
Agent_Skills_万千应用_第01篇_PDF 处理 Skill:让 Agent 真正会读、会拆、会抽取 PDF
Agent Skills 万千应用 第01篇 PDF 处理 Skill:让 Agent 真正会读、会拆、会抽取 PDF 01|场景痛点开场:PDF 是办公室里最像“黑盒”的文件 你一定遇到过这种场景:老板丢来一份 80 页行业报告,让你 10 分钟内说清楚“…...
保姆级教程:在Ubuntu 18.04 + ROS Melodic上搞定Intel RealSense D415深度相机驱动(附固件升级避坑指南)
从零搭建ROS Melodic环境:Intel RealSense D415深度相机全流程配置指南 第一次将Intel RealSense D415深度相机连接到Ubuntu 18.04系统时,我遇到了驱动不兼容、固件版本冲突、USB连接不稳定等一系列问题。经过多次尝试和调试,终于总结出一套…...
CTF 实战必备 Hashcat 密码破解工具 零基础全套教程
HashCat密码破解工具介绍 hashcat号称世界上最快的密码破解,世界上第一个和唯一的基于GPU的规则引擎,免费多GPU(高达128个GPU),多哈希,多操作系统(Linux和Windows本地二进制文件)&a…...
一键找回青春记忆:GetQzonehistory让QQ空间历史说说永久保存
一键找回青春记忆:GetQzonehistory让QQ空间历史说说永久保存 【免费下载链接】GetQzonehistory 获取QQ空间发布的历史说说 项目地址: https://gitcode.com/GitHub_Trending/ge/GetQzonehistory 还在为那些年发过的QQ空间说说可能丢失而担忧吗?Get…...
汽车质量管理体系的核心要素与持续改进之道
在当今竞争激烈的汽车制造业中,质量管理体系不仅是确保产品品质的基石,更是引领行业迈向智能制造未来的关键。作为制造业的核心,质量管理体系能够帮助企业在产品研发、生产制造和售后服务等环节发现并解决问题,提升产品质量和用户…...
用FPGA的DDS IP核做个信号发生器:从Vivado配置到ILA抓波形实战
基于FPGA的DDS信号发生器实战:从IP核配置到硬件调试全解析 在数字信号处理领域,直接数字频率合成(DDS)技术因其频率分辨率高、切换速度快和相位连续可调等优势,已成为现代电子系统中不可或缺的核心技术。本文将带领读者完成一个完整的FPGA-ba…...
