我已经和我一起工作Redux
了近一个月了.我的问题是,我将所有的应用程序数据放入其中redux store
,但是我是否应该将切换状态设置为帮助我更改redux
状态的UI,或者我应该只是在每个页面中进行本地管理
this.setState({ showActiveForm : false })
对此没有正确或错误的答案.为了帮助您做出决定,以下是一些直接从redux文档中获取的常用经验法则:
将大部分UI状态保留在redux中的另一个好处是,您可以编写更多无状态功能组件,并利用它们将在未来版本的React中带来的性能优化:
此模式旨在鼓励创建应包含大部分应用程序的这些简单组件.将来,我们还可以通过避免不必要的检查和内存分配来针对这些组件进行性能优化.
目前的最佳做法是使用本地状态来处理您所在user interface (UI)
州的状态而不是data
.
你的案例是上述的完美例子.因此,管理组件隐藏和显示的状态必须在本地状态本身而不是redux存储
您可以以本地状态存储的UI数据的另一个示例是选项列表中当前选定的选项卡.
考虑何时使用的一种好方法local state
是考虑您存储的值是否将被另一个组件使用.如果某个值仅特定于单个组件,则可以安全地保留该值local state.
进一步阐述
Redux
对于触发您需要在多个组件或多个路径上访问的事件也很有用.这方面的一个例子是登录模式,可以通过应用程序中的多个按钮触发.您可以有条件地在应用程序的顶层呈现它,并使用Redux操作通过更改商店中的值来触发它,而不是在十几个地方有条件地呈现模式.
通常,经验法则是您使用 aredux store
来管理应用程序中的数据,也称为存储从服务器获取的项目和本地react state
的 ui 行为,例如您案例中的切换。但这不是一个严格的规则,例如,如果您需要从多个位置切换某些内容,那么使用它会更redux
容易
归档时间: |
|
查看次数: |
3726 次 |
最近记录: |