当后台返回的字段名跟前端一些框架绑定的键名不一致时,需要手动转换一下:
data为数组,keyName为修改前的键名,name为修改后的键名
JSON.parse(JSON.stringify(data).replace(/keyName/g, 'name'))
过程解析:
- JSON.stringify()把json对象转成json字符串;
- 使用正则的replace()方法替换属性名;
- JSON.parse()把json字符串又转成json对象。
另一种方法:利用map对象
let newData = [];
let obj = {};
this.data.map(item => {
obj = item;
obj['name'] = item['keyName'];
delete obj['keyName'];
newData.push(obj)
})
过程解析:
- 循环数组对象,复制对象原来的值到新的obj中;
- 在obj对象中添加键名为name的属性,将旧的键名为keyName的属性赋值;
- 删除掉旧的键名为keyName的属性;
- 将处理好的obj对象添加到新数组中。