(一)需求
新增对象和编辑对象,对于业务场景下面的属性的值的默认值要区分,设置不同的默认值。
(二)实现
1、forEach 更新数据失败了
一开始尝试,是在获取异步请求后,直接进行数据处理的,但是失败了,在另一边选择不同的业务场景下,一直无法更新。
- 复杂对象数据的深拷贝,试过了不行
- nextTick到下微任务异步队列,试过了不行
- setTimeout到下个宏任务异步队列,试过了还行不行
心情略崩溃,就是不行;
2、进一步排查
发现是在选业务场景后,数据会有重新赋值的情况; 而选择重新赋值使用的旧有的对象。
虽然到现在还是不大明白,为什么,数据渲染后,还是没有渲染到原始的对象中,这里先记录下。之后再补充。
this.toolsList.forEach(function (item) {
item.checked= true
if (_this.newState) {
if (item.tool_name === 'other') {
const attributes = item.attributes
attributes.forEach((attr) => {
if (attr.name === 'edit_object_model') {
console.log('attr2', attr)
attr.value = '10'
}
})
}
}
})
写在最后的话
学习路上,常常会懈怠
《有想学技术需要监督的同学嘛~》
https://mp.weixin.qq.com/s/Fy...
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。