【发布时间】:2021-05-28 22:43:46
【问题描述】:
const map1 = Immutable.Map({ a: { x: 1, z: 1, y: 1, values: [1, 2, 3] } });
const map2 = Immutable.Map({ a: { x: 2, values: [4, 5, 6] } });
const map3 = map1.mergeDeep(map2)
// Output I want is:
// { a: { x: 2, z: 1, y: 1 values: [4, 5, 6] } }
假设我有两张地图。其中一张地图是另一张地图的部分对象,不一定包含所有相同的属性。我想合并它们,包括嵌套对象,但不合并数组。如上所示,它更新了两个地图中存在的属性,保留了新第二个地图中不存在的旧属性,并且只使用了最新的地图数组而不是将它们合并到 [1,2,3 ,4,5,6]。我该怎么做?
【问题讨论】: