React鼓励尽可能多地使用无状态组件,并有一个有状态的父组件来管理它们。我知道这可以使无状态组件更加可重用,并且易于管理。但是,到了极点,我们总是可以把 state 放在最顶层的组件上,比如 App.js,通过一个长长的 props 链来传递信息和回调。如果使用 Flux,动作也总是可以在其中调度(通过回调执行)。
所以我想知道分离有状态和无状态组件的路线是什么?如果使用 Flux,Action 应该在哪里分派?
--- 添加一个例子 ---
假设我有一个像网络应用程序这样的谷歌文档,它有一个工具栏和显示的内容。我想我们会有组件结构。
<App>
<Toolbar />
<Content />
</App>
工具栏有会影响显示内容的按钮,比如粗体文本按钮。
那么 App 应该将 onButtonPressed 回调 props 传递给 Toolbar 并自行调度 Actions,还是应该让 Toolbar 自己做呢?
App 应该将 contentString props 传递给 Content,还是让 Content 自己监听 Store 的变化?
谢谢!