2016-04-14 79 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建议围绕这一点的最佳实践。他们的体系结构建议是使用两类组件;容器和视图。

容器与商店进行交互以收集数据并且不接收任何道具。他们没有视图逻辑,他们将商店数据作为道具传递给子视图。

视图获取作为道具传递的所有信息(无商店通信)。

所以是的,你会把这些值从孩子传递给孩子作为道具。但你可以有多个容器,从商店拉相同的信息。重要的是容器应该对自己的位置和位置不知道,完全没有意识到自己的父母是谁。

相关问题