0
我有趣的Immutable.js和有問題的合併對象與數組。Immutable.js mergeDeepWith問題
我對合並溫控功能是:
function singleTrackReducer(state = Immutable.Map(singleTrack), action) {
switch (action.type){
case AudioFormActions.CHANGE:
return state.mergeDeepWith((prev, next) => next, action.entity);
default:
return state;
}
}
,我合併,看起來像這樣的對象:
const singleTrack = {
songTitle: '',
mainArtists: [],
featuredArtists: [],
releaseDate: '',
primaryGenre: '',
isExplicit: false,
labelName:'',
upCode: '',
eanCode: '',
isrcCode:'',
copyRight: ''
};
我試圖更新mainArtists屬性。例如,我可以添加幾位藝術家加入我的藝術家陣列併成功執行更新。但是,當我從數組中刪除一個對象時,它似乎被一個前一個對象填充。
,比方說是藝術家的數組爲[公鴨,蕾哈娜,TYGA]
如果我呼籲用行動實體功能[公鴨,蕾哈娜,TYGA,約翰]它更新罰款和mainArtists財產變爲[公鴨,蕾哈娜,泰加,約翰]。
當我刪除一個藝術家例如TYGA和數組爲[公鴨,蕾哈娜,約翰]
的mainArtist財產變爲[公鴨,蕾哈娜,約翰,約翰]
誰能解釋我如何解決這個問題