2016-02-13 71 views
1

初始數據,我編寫異步操作加載從Web服務調用

http://redux.js.org/docs/advanced/AsyncActions.html

,並在此基礎上閱讀本教程中,我有一個叫我的行動fetchPosts方法。此方法首先調度requestPosts操作,然後調用Web服務並最終爲receivePosts調度結果。

我的問題是我應該從哪裏調用這個方法,以便當我的應用程序加載時,數據從Web服務加載?

+0

這是一個非常開放式的問題的一些例子。 SO的更好方法是嘗試將它們放在某個地方,然後在遇到問題時再回來。也就是說,決定放置它們的位置取決於你想要數據的時間。你必須決定什麼時候「我的應用程序加載」對你來說意味着什麼。在那裏發送。就個人而言,我傾向於默認使用最頂級組件的'componentWillMount'方法。 – EugeneZ

回答

2

下面是從應用程序邏輯

1)根據一些選項如果你希望獲得的職位全球範圍內,在所有組件

可以在創建後存放擺正fetchPosts
例如從 redux/examples/shopping-cart

const store = createStore(
    reducer, 
    applyMiddleware(...middleware) 
) 

store.dispatch(getAllProducts()) 

2)如果您只想訪問特定組件/頁

你可以把fetchPosts呼叫componentWillMount特定組件的方法。

componentWillMount() { 
    loadData() 
} 

從終極版官方例子

  1. redux/examples/real-world/containers/RepoPage.js
  2. redux/examples/async/containers/App.js
  3. redux/examples/real-world/containers/UserPage.js