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));
相关推荐
小白学前端6661 小时前
React Router 深入指南:从入门到进阶
前端·react.js·react
苹果醋31 小时前
React系列(八)——React进阶知识点拓展
运维·vue.js·spring boot·nginx·课程设计
web130933203981 小时前
前端下载后端文件流,文件可以下载,但是打不开,显示“文件已损坏”的问题分析与解决方案
前端
王小王和他的小伙伴1 小时前
解决 vue3 中 echarts图表在el-dialog中显示问题
javascript·vue.js·echarts
outstanding木槿1 小时前
react+antd的Table组件编辑单元格
前端·javascript·react.js·前端框架
好名字08212 小时前
前端取Content-Disposition中的filename字段与解码(vue)
前端·javascript·vue.js·前端框架
隐形喷火龙2 小时前
element ui--下拉根据拼音首字母过滤
前端·vue.js·ui
m0_748241122 小时前
Selenium之Web元素定位
前端·selenium·测试工具
风无雨2 小时前
react杂乱笔记(一)
前端·笔记·react.js
前端小魔女3 小时前
2024-我赚到自媒体第一桶金
前端·rust