vform2 表单数据回显问题

vform2 表单数据回显

问题

ruoyi-flowable-plus 流程绑定的表单需要回显暂存的数据,使用JSON.stringify(this.$refs.vFormRef.getFormData(false))存储数据后,如果表单中含有上传组件并且存储时上传组件没有上传,使用this.$refs.vFormRef.setFormData(JSON.parse(res.content))后,再点击上传会报错

Cannot read properties of undefined (reading 'push')

使用单独的setFieldValue后,有发现因为有子表单数据,setFieldValue无法回显子表单,需要单独处理

解决办法

javascript 复制代码
 			const thisObj = this.$refs.vFormRef.getFormData(false);
            var oldValue = JSON.parse(res.content);
            console.log( this.$refs.vFormRef.formDataModel)
            Object.keys(oldValue).forEach(key => {
              if (thisObj.hasOwnProperty(key)) {
                if(key == 'p_member'){
                  this.$refs.vFormRef.formDataModel["p_member"] = oldValue[key];
                  // 通知SubForm组件:表单数据更新事件!!
                  this.$refs.vFormRef.broadcast('ContainerItem', 'setFormData', this.$refs.vFormRef.formDataModel)
                } else {
                  this.$refs.vFormRef.setFieldValue(key, oldValue[key])
                  console.log('已设置', key ,oldValue[key]);
                }
              }
            });
            // 如果设置的上传值为null的话,以下方法会导致上传组件无法继续上传
            // this.$refs.vFormRef.setFormData(JSON.parse(res.content));
相关推荐
linweidong1 小时前
C++ 模块化编程(Modules)在大规模系统中的实践难点?
linux·前端·c++
leobertlan4 小时前
2025年终总结
前端·后端·程序员
子兮曰5 小时前
OpenClaw架构揭秘:178k stars的个人AI助手如何用Gateway模式统一控制12+通讯频道
前端·javascript·github
Howrun7775 小时前
VSCode烦人的远程交互UI讲解
ide·vue.js·vscode
百锦再5 小时前
Reactive编程入门:Project Reactor 深度指南
前端·javascript·python·react.js·django·前端框架·reactjs
莲华君5 小时前
React快速上手:从零到项目实战
前端·reactjs教程
百锦再5 小时前
React编程高级主题:测试代码
android·前端·javascript·react.js·前端框架·reactjs
易安说AI6 小时前
Ralph Loop 让Claude无止尽干活的牛马...
前端·后端
失忆爆表症7 小时前
05_UI 组件库集成指南:Shadcn/ui + Tailwind CSS v4
前端·css·ui
小迷糊的学习记录8 小时前
Vuex 与 pinia
前端·javascript·vue.js