簡體   English   中英

如何在Redux中向數組添加項目?

[英]How to add items to an array in Redux?

我正在構建一個Electron應用程序,並且試圖保留每個頁面上的圖像數組,因此,如果頁面被刪除,我可以輕松地從文件系統中刪除所有相關的圖像。

我現在所擁有的:

const initialState = [{
  uuid: '65ec81f5-a783-4abd-bd0d-1451adda58c6',
  imageUUIDs: []
}];

const actionsMap = {
   [ActionTypes.ADD_IMAGE_TO_PAGE](state, action) {
        const pageUUID = action.pageUUID;
        const imgUUID = action.imgUUID;
        return state.map(page =>
          (page.uuid === pageUUID ?
            Object.assign({}, page, {
              imageUUIDs: page.imageUUIDs.splice(0, 0, imgUUID),
            }) : page)
        );
  },

};

在運行時查看時,這最初似乎可以正常工作,但是完成后我最終得到一個空數組。 維護這樣的列表的正確方法是什么?

使用Array.prototype.concat而不是Array.prototype.splice Array.prototype.concat返回一個新數組,而Array.prototype.splice修改原始數組,但不返回新數組,這不是您所期望的。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM