多选下拉菜单后端用string类型接收解决办法:lodash 深拷贝

新建一条表单记录,里面存在多选下拉菜单,点击保存需要将多选下拉菜单转变成string类型.
回到列表页,点击查看,回显时,为了保证能够正确回显需要将后端返回string类型的两个字段转变成数组类型
再次点击保存,提交的就是数组类型和后端不对应就会报错.

解决办法
再次点击保存时,深拷贝一份表单对象值,判断下拉菜单值是否为数组,是就转变成string,将拷贝的对象作为保存接口的入参.

let val2 = _.cloneDeep(val)
if(Array.isArray(val2.dispatchVehicle) || Array.isArray(val2.driver)){
    val2.dispatchVehicle = val2.dispatchVehicle.join(",")
}

参考链接:https://www.jianshu.com/p/06ea14f9f19d

上一篇:2021年了,jQuery过时了吗,你还在用jQuery吗?


下一篇:pointnet++代码逐行解析(四)——— modelnetdataloader