redux中的this.props对象

时间:2016-10-27 11:18:58

标签: reactjs redux

我正在查看此source code示例的async。我想知道this.props对象。所以我在代码中添加调试器,我可以看到它看起来像这样。

enter image description here

我的问题是,为什么它包含这些字段?感谢

1 个答案:

答案 0 :(得分:2)

在Redux中,props已准备好并通过connect函数(connect documentation传递给组件。

它接受论点:

  

connect([mapStateToProps],[mapDispatchToProps],[mergeProps],[options])

mapStateToProps是映射"来自商店的状态"到组件使用的道具"。

此函数接受redux store的state作为参数,处理/过滤它们,并返回一个对象:

  return {
    selectedReddit,
    posts,
    isFetching,
    lastUpdated
  }

将传递给组件。

默认情况下会注入剩余值dispatch

  

[mapDispatchToProps(dispatch,[ownProps]):dispatchProps](对象或函数):如果传递了一个对象,...如果省略它,默认实现只是将调度注入到组件的道具中。

参考:https://github.com/reactjs/react-redux/blob/master/docs/api.md#connectmapstatetoprops-mapdispatchtoprops-mergeprops-options

函数dispatch用于调度action(由某些action creator返回)。 dispatching一个动作将触发Redux重新评估商店,将商店值从上到下传递给react DOM树,并在需要时重新呈现组件。

参考:http://redux.js.org/docs/api/Store.html#dispatch