与连接组件的React-Async-Poll



查看react-ashync-poll的文档,我遵循用法示例将asyncPoll集成到我的组件中,但是我在onPollinterval函数中收到Uncaught TypeError: dispatch is not a function投诉

import React, { Component } from 'react';
import { connect } from 'react-redux';
import asyncPoll from 'react-async-poll';
import { fetchCaCities, } from '../actions';
import MyMap from './my-map';
class CaliforniaMap extends Component {
  componentDidMount() {
    this.props.fetchCaCities();
  } 
  render() {
    return (
      <div>
        <h1>California Map</h1>
        <MyMap center={[37.5, -120]} zoom={6} layers={[this.props.caCities]} />
      </div>
    );
  }
}
const onPollInterval = (props, dispatch) => {
  console.log(dispatch); // undefined
  return dispatch(fetchCaCities());
};
const mapStateToProps = state => ({
  caCities: state.map.california.caCities,
});
export default asyncPoll(60 * 1000, onPollInterval)(connect(
  mapStateToProps, { fetchCaCities }
)(CaliforniaMap)

也许react-async-poll不适用于连接的组件?

根据文档:

dispatch参数仅传递给[Interval] 在道具中可用,否则将不确定。

他们给出的示例令人困惑,因为它在任何地方都不能定义dispatch,但是它们使用它显示onPollInterval

最新更新