【发布时间】:2019-12-17 20:20:08
【问题描述】:
我正在使用 React、Redux 和不可变。我尝试合并两个 Json 对象,数据和预期结果如下,
obj1 =
{id: 1, first_name: "abc", surname: "def", children: ["kid1", "kid2"]}
obj2 =
{first_name: "abc", surname: "def", email: "abc.def@gmail.com", mobile: ""}
mergedObj = {id: 1, first_name: "abc", surname: "def", email: "abc.def@gmail.com", Mobile: "", children: ["kid1", "kid2"]}
如果 obj1 上没有数据,则应从 obj2 中获取。
我尝试使用如下所述的不可变合并,
import Immutable, {merge} from "immutable";
const mergedObj = merge(Immutable.fromJS(obj2), Immutable.fromJS(obj1));
console.log(mergedObj)
结果与 obj2 相同,本质上没有发生合并,
{first_name: "abc", surname: "def", email: "abc.def@gmail.com", mobile: ""}
【问题讨论】:
-
您正在合并两个 普通对象(也称为 POJO)。 “JSON”指的是那些的字符串表示。 (在此页面上第二次迂腐,抱歉)。无论如何,赞成的问题是明确和合法的。
标签: javascript reactjs immutable.js