react中form.setFieldvalue数据回填时 value和text不对应的问题

react中进入表单的编辑页面时 需要将之前新建的数据回填,如果是{}的形式 需要一一对应,如果是[]的形式 需要单独的值
意思是不接受数组对象也就是[{},{},{}]的形式
解决方法:借用对象,用key去找value

// 进入编辑页面 多选框的回填(转换为对象的形式,用key来找value)
let reversedynamicDataObj = {
    
    };
let result = [];
Data.relatedProjects.map((i) => {
    
    
         JSON.stringify(i.id)
         .split(',')
         .map((ele) => {
    
    
     			reversedynamicDataObj[ele] = {
    
    
                      value: {
    
     name: i.name, id: ele },
                      key: ele,
                 };
        		result.push(reversedynamicDataObj[ele]['key']);
           });
});

Data.relatedProjectIds = result;
form.setFieldsValue(Data);

猜你喜欢

转载自blog.csdn.net/weixin_43569396/article/details/125486911