要将其他字段转换为嵌套对象,可以修改数据准备过程。您需要拆分字段名称并相应地构建对象。以下是您可以使用的功能:
function transformFormData(formData) {
const data = {};
for (let [key, value] of formData.entries()) {
if (key.startsWith('other[')) {
const nestedKey = key.substring(key.indexOf('[') + 1, key.indexOf(']'));
if (!data['other']) {
data['other'] = {};
}
data['other'][nestedKey] = value;
} else {
data[key] = value;
}
}
return data;
}data;
}
使用此功能替换当前的数据准备过程:
const data = transformFormData(new FormData(this.form));
此函数遍历表单数据项,并检查键是否以“other”开头。如果是这样,它将提取嵌套键(如“a”或“b”)并相应地构造对象。否则,它将键值对直接存储在主对象中。