我有麻煩與反應,助焊劑...我們有一個應用程序,這是非常相似的新焊劑聊天的例子。我們有着名的錯誤「不能在調度中發送」。但是,在某些情況下,我們很難想出解決這個問題的好方法。呼叫行動,......不能在調度中間派遣?
我們的疑問與此相同:https://groups.google.com/forum/#!topic/reactjs/mVbO3H1rICw,但我無法很好地理解所採用的解決方案。據我瞭解,這不是一個非常優雅的解決方案。
以下是事件序列:
動作A派遣;
存儲更新它的內部狀態,併發出變更信息;
響應組件X接收到更改消息(通過偵聽器的回調)並更新其狀態(setState);
組件X呈現並且作爲新組件Y的一部分也被安裝。我們選擇組件(Y,Z等)以使用狀態信息進行渲染;
新組件Y需要顯示最初未加載的數據。因此,我們呼籲在分量Y的componentDidMount()調用一個動作B.
然後一個API,在操作B中的新的調度員,我們有這個調度錯誤。
如果您認爲我們的應用程序邏輯有一些問題,我可以帶一些實用的例子來說明爲什麼這種情況對我們來說很常見。任何關於重構這種「通量」的想法都非常受歡迎。
感謝您的幫助!
嗨!我不想從店裏打電話來。 「在流量應用數據在一個方向流動」:https://facebook.github.io/flux/docs/overview.html – Dherik
youre不去使用的行動,使該API調用。你將api移動到第一個動作的週期 – PhilVarg
我的錯誤。我說過,因爲我們在調用API之後調度API結果(有效載荷),因爲有些組件正在監聽這個API調用。我們的解決方案類似:https://github.com/schempy/react-flux-api-calls。並且我不能從派遣行動A的所有API調用,因爲這個商店不知道什麼API調用將是必要的,因爲只有組件(Y,Z等)知道。我會舉兩個實例來說明問題。 – Dherik