我正在重构从Flux到Redux的应用程序。正如Redux所说,它对整个应用程序的状态都有一个状态树。在此重构之前,大多数组件仅使用props并在容器组件上使用状态,但我的应用程序中的某些关键组件具有独立于Redux的单个状态树的可视目的的状态。
其中一个组件是React-Dropzone-Component,它有自己的状态(如果你看它的代码),但我有其他非第三方组件,作为React-Dropzone-Component,他们有他们的自己的状态(出于前面所说的视觉目的)。
我的问题是这些组件是否有自己的状态?或者我应该将这些组件的状态移动到Redux提出的主要状态吗?
如果我必须将这些组件状态移动到Redux的状态,我是不是强迫这些组件仅在单个状态树环境中工作?
答案 0 :(得分:2)
在Redux应用程序中使用组件状态没有任何问题。只要:
一个很好的例子就是琐碎的UI内容,比如显示/隐藏功能。*我不熟悉React Dropzone,但它似乎适合这个类别。
(*但这并不是说所有UI逻辑都属于本地状态;有时它需要存储在商店中。)