我的商店包含一個數組,我在用戶單擊按鈕時追加新項目。這些項目的內容取決於在商店其他地方設置的標誌。在反應中,如何訪問動作創建者內部的狀態?
例如,如果用戶先前已啓用「設置X」,則新陣列項目應該包含{ type: 'x'}
而不是默認{type: 'y'}
。
我明白如何分配一個動作來執行新的數組項目的添加,但我無法弄清楚如何編寫狀態其他部分的動作。
我的問題:
我真的需要在這裏使用
redux-thunk
?我無法找到一個最終不會回落的單一SO答案。我是React的新手,想了解爲什麼這不可能是默認的。這是否都是因爲用戶點擊按鈕和被分派的動作之間的狀態可能會有所變化?
有沒有一個更明顯/哈克的方法我失蹤要做到這一點?我已經使用
ownProps
試圖mapDispatchToProps
但ownProps
似乎只包含道具不由connect()
提供和「設置X」 是其所提供。
你可以使用一個事實,即每個減速器實際處理每一個狀態變化採取行動2個不同的減速器。所以你可以在2個reducer中使用相同的case語句。 – cheesemacfly
你的意思是使用reducer A創建新的數組項,但沒有任何'type',但以某種方式識別它,所以第二個reducer B可以用'type''升級'這個新的數組項?這聽起來像是對我來說維護混亂的祕訣。 – xcession
好的,但這就是你所描述的情況。或者我錯過了什麼?也許如果你可以拋出一些代碼,我們可以看看它會更容易:) – cheesemacfly