如何调度从API获取的数据?

时间:2018-06-30 08:54:40

标签: reactjs redux dispatch

我有fetchWeatherData(location)-该文件从天气API中获取数据

当我打电话给store.dispatch(fetchWeatherData('london'))时,一切正常

但是,如果没有store.dispatch ...,我该怎么办呢?我的意思是自动

1 个答案:

答案 0 :(得分:0)

我认为您正在寻找一种叫做mapDispatchToProps的东西。

const mapDispatchToProps = (dispatch) => ({
   fetchWeatherData: (payload) => {
      dispatch(fetchWeatherData(payload))
  }
});

现在,您需要connect将它添加到组件中,并在其中使用它。

class Test extends React.Component {

   componentWillMount () {
      this.props.fetchWeatherData("london")
   }

   render () {
    return null;
  }
}

const withStore = connect(null, mapDispatchToProps);
export default withStore(Test);

您可以在redux documentation中了解有关此内容的更多信息。