如何使用 redux 获得以前的状态?

IT技术 reactjs redux
2021-05-07 23:50:14

我在 React 中有一个应用程序,我在 2 个 reducer 中使用 Redux 拆分了我的状态。在我的一个组件中,我在服务器安装时从服务器获取一些数据,并且我还有一个删除按钮。

我用来在组件安装时获取数据的操作,我也想在componentDidUpdate 中使用它,所以一旦我从列表中删除项目,我将更新列表。我从componentDidUpdate记录了以前的状态,我看到它仍在使用组件中的状态。

有什么方法可以让我Redux访问之前的状态,以便我可以与componentDidUpdate 中的当前状态进行比较,这样我就不会进入无限循环?

1个回答

你应该能够使用componentDidUpdate来实现这一点

Redux 将状态片段作为props传递给您的组件(即您在 中定义的任何内容mapStateToProps

您可以像这样在 did update 中使用 redux 状态值的转换

componentDidUpdate(props) {
  if (this.props.someImportantItem && !props.someImportantItem || this.props.someImportantItem !== props.someImportantItem) {
    // code here to make a request
  }
}