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);