我试图以redux的方式显示数据。当您单击高级体育搜索按钮时,将打开一个抽屉,其中当您单击搜索属性时,该抽屉应呈现历史数据所以我在动作fetchHistorySportsDatafromURL中创建了此方法然后在抽屉标签中将此方法称为fetchHistorySportsDatafromURL方法。但它不显示数据。我调试并发现此const historySports = this.props.historySports;未定义;console.log(“ historySports —>”,historySports);我正在使用mapDispatchToProps,但仍然不成功。我试图在这里显示我的数据,并从api {historySports}中读取数据我所有的渲染代码都在此文件中sports-advanced-search.js在下面提供我的代码段和沙箱https://codesandbox.io/s/5x02vjjlqp
行动
export const fetchHistorySportsDatafromURL = data => { return dispatch => { if (data != undefined) { return axios({ method: "get", url: "https://jsonplaceholder.typicode.com/comments", data: data, config: { headers: { "Content-Type": "application/json" } } }) .then(function(response) { console.log("fetchSportsHistoryData--->", response); dispatch(fetchSportsHistoryData(response.data)); }) .catch(function(response) { dispatch(fetchSportsHistoryData([])); }); } }; };
渲染代码
getHistoryData = values => { this.props.fetchHistorySportsDatafromURL(); }; render() { const { classes } = this.props; const { value } = this.state; const Sports = this.props.Sports; const historySports = this.props.historySports; console.log("historySports--->", historySports); console.log("this.props--->", this.props); console.log("this.state--->", this.state); } const mapDispatchToProps = dispatch => { return { fetchHistorySportsDatafromURL: () => { dispatch(fetchHistorySportsDatafromURL()); } }; }; export default withStyles(styles)( connect( null, mapDispatchToProps )(ScrollableTabsButtonAuto) );