第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Lodash 合并:如果源值與目標值匹配,則僅復(fù)制對象屬性

Lodash 合并:如果源值與目標值匹配,則僅復(fù)制對象屬性

慕勒3428872 2021-10-14 16:58:40
我有兩個深層/復(fù)雜的對象合并在一起。在'addresses' 數(shù)組中需要有兩個對象用于兩種不同的地址類型,“PRIMARY”和“MAILING”。在我的目標對象中,“PRIMARY” obj 位于“MAILING” obj 上方。除了源對象中只有“MAILING”obj 可用之外,一切都很好。發(fā)生這種情況時,兩個對象的“addressType”屬性都會被“MAILING”覆蓋// In destination obj:addresses: [ {  addressType: "PRIMARY",  addressLine1: "",  addressLine2: "",  city: "",  state: "",  zip: "" }, {  addressType: "MAILING",  ... }]// In source obj:addresses: [ {  addressType: "MAILING",  addressLine1: "123 Main St",  addressLine2: "",  city: "Hawkins",  state: "IN",  zip: "46001" }]之后merge/當前輸出(重復(fù)地址類型):_.merge({}, destination, source); //need new objectaddresses: [     {      addressType: "MAILING",      addressLine1: "123 Main St",      addressLine2: "",      city: "Hawkins",      state: "IN",      zip: "46001"     },     {      addressType: "MAILING",      addressLine1: "",      addressLine2: "",      city: "",      state: "",      zip: ""     }    ]期望輸出:// DESIRED OUTPUT:addresses: [     {      addressType: "PRIMARY",      addressLine1: "",      addressLine2: "",      city: "",      state: "",      zip: ""     },     {      addressType: "MAILING",      addressLine1: "123 Main St",      addressLine2: "",      city: "Hawkins",      state: "IN",      zip: "46001"     }    ]來自源的地址數(shù)組可能不包含任何對象、兩者都包含或一個。所以我的問題是,如果源 obj 中只有“MAILING”,我如何防止它覆蓋“PRIMARY”obj,同時留下“MAILING”(來自源)和“PRIMARY”obj(來自目標)?我應(yīng)該改用 mergeWith 嗎?
查看完整描述

1 回答

?
一只名叫tom的貓

TA貢獻1906條經(jīng)驗 獲得超3個贊

我能夠使用以下自定義程序功能以及mergeWith:


mergeWith({}, destination, source, customizer);


const customizer = (objValue, srcValue, key) => {

  if (key === "addresses") {

    let merged = merge(

      keyBy(objValue, "addressType"),

      keyBy(srcValue, "addressType")

    );

    let value = values(merged);

    return value;

  }

};


查看完整回答
反對 回復(fù) 2021-10-14
  • 1 回答
  • 0 關(guān)注
  • 244 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號