深层数据绑定
在开发过程中,经常会遇到需要将前端数据转换为符合服务端数据结构的情况。
比如一张表单你收集到的可能是这样的数据:
js
{
id: 1,
name: "吴彦祖",
desc: "中国最帅的男人",
age: 42,
tag:['a','b']
}
而后端希望收到的是这样的数据
js
{
id: 1,
info:{
basic:{
name: "吴彦祖",
desc: "中国最帅的男人",
age: 42,
},
tag:['a','b']
}
}
为了解决这个问题,name 字段扩展为魔法字段,既是唯一标识,也是数据路径,可以让你自由指定数据存储的层级。
比如name是【id】,数据就会保存为 { id: 'xxx' }
比如name是【info.tag】,数据就会保存为 { info: { tag:'xxx' } }
比如name是【info.basic.name】,数据就会保存为 { info: { basic:{ name:'xxx' } } }
无论数据层级保存的多深,都能准确追踪,且能精准校验