繁体   English   中英

React + Redux:商店更新时如何更新状态

[英]React + Redux: How to update state when store is updated

很抱歉这个菜鸟问题,但是尝试学习React + Redux和我正在使用的书有一些概述性的内容,但是没有关于“将它们全部绑在一起”的说明。

看一下: https : //stackblitz.com/edit/react-chapt8-redux-store?file=index.js

您会看到,我有几种颜色的初始状态,其中包括一些减速器和动作创建器。

我的问题基本上是, 商店更新时如何更新控件/状态?

看第49行,我从商店设置了初始状态。 然后,在第51到第54行中,我订阅商店更改,并在其中调用this.setState并获取商店的新状态。 同样在第71行,我通过将colors分配给状态来设置colors常量。

这是最好/正确的方法吗? 或者,还有更好的方法? 最好是更新状态,然后更新颜色(例如我当前正在执行的操作)吗? 还是应该通过subscribe功能以某种方式更新颜色?

感谢您的见解/指导。

因此,您可以通过这种方式工作,但是通常无论从存储中拉出的任何内容都不会进入组件的state -存储的目的是避免首先保持该状态。

因此,下一步将是添加react-reduxhttps://www.npmjs.com/package/react-redux )作为依赖项,并使用connect函数将状态从存储中拉出并将其提供给组件通过道具:

import { connect } from 'react-redux';

class App extends Component {
    ... code for <App/> component
}

function mapStateToProps(state) {
    ... code to pick out only the relevant state from the props
}

connect(mapStateToProps)(App);

我强烈推荐Stephen Grider的关于udemy的视频,它专门介绍了其中的一些内容,实在太多了,无法在此处发布

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM