2016-04-14 38 views
0

例如,在一個頁面中,我想在很多組件中使用UserStore。 可以使用這種方式嗎?我可以在反應中使用多個組件的alt商店嗎?

  1. 如果組件是UserComponent的子項,我必須在每個子項中聲明{... props}嗎?或者可以在許多兒童組件中使用重複疊加註射嗎?

  2. 如果組件不在UserComponent中,可以在許多組件中聲明UserStore重複嗎?

什麼是最佳實踐?

<Component1> 
    <UserComponent> < --- UserStore : get states to props 
    <Component1 /> 

    <Component2> 
     <Component3> 
     <Component4> 
      <Component5 /> < --- UserStore : get states to props 
     </Component4> 
     </Component3> 
    </UserComponent> 
</Component1> 

<Component6> 
    <Component7></Component7> < --- UserStore : get states to props 
</Component6> 

回答

2

這裏有很多思路。我承認我沒有使用過alt.js,所以可能會有些自以爲是的方面,我沒有解決。

這就是說;

FB's Flux Documentation建議圍繞這一點的最佳實踐。他們的體系結構建議是使用兩類組件;容器和視圖。

容器與商店進行交互以收集數據並且不接收任何道具。他們沒有視圖邏輯,他們將商店數據作爲道具傳遞給子視圖。

視圖獲取作爲道具傳遞的所有信息(無商店通信)。

所以是的,你會把這些值從孩子傳遞給孩子作爲道具。但你可以有多個容器,從商店拉相同的信息。重要的是容器應該對自己的位置和位置不知道,完全沒有意識到自己的父母是誰。

相關問題