最近遇到一個(gè)困惑如下:假設(shè)通過請(qǐng)求獲取到一份原始商品列表,我將它存在store中state = {
products:[...]
}在某個(gè)組件中,用戶可以隱藏一些自己不關(guān)心的商品(ps:不是刪除,類似于要添加一個(gè)show:false屬性)。我自己想了幾種方法:一、直接給products中每一項(xiàng)增加一個(gè)show屬性。二、在store中再創(chuàng)建一個(gè)products的備份productsCopy,再增加show屬性。三、把products存一份到這個(gè)組件的私有state中。問題是:1、方法一中,當(dāng)增加的字段越來越多后,請(qǐng)求products接口后需要做的初始化工作會(huì)很多。2、對(duì)于其他組件不關(guān)心的狀態(tài),我感覺放redux store中不是很好的選擇,而且需要寫action、reducer、constant、寫各種import等,代碼量很多。3、方法三需要在componentWillReceiveProps中監(jiān)聽products的變化,再同步到私有state中。感覺也有點(diǎn)麻煩,而且不容易區(qū)分是props.products變化還是其他props變化。想問下大家平時(shí)是怎么處理的?有沒有更好的解決方法?
react redux狀態(tài)管理問題
慕運(yùn)維8079593
2018-12-11 15:24:56