我不确定为什么我的函数给我这个错误。在返回值的函数中,我确保所有级别上都有一个return语句。关于这个错误为什么会发生,我是否还有其他意见?该服务完美地返回了数据,但是前端看不到我的操作返回。
我尝试了其他具有相同标题的解决方案,因此希望它不是重复的
前端:
componentDidMount() {
const { item } = this.props;
this.props.getDetails(Number)
.then((res) => {
this.setState({
data: res.response.response.Results
})
});
}
映射:
function mapDispatchToProps(dispatch) {
return {
getDetails(Number) {
dispatch(getActions.getDetails(Number));
}
};
}
功能检索:
function getDetails(Number) {
return (dispatch) => {
dispatch({ type: policyConstants.ITEM_GETDETAIL_REQUEST });
return Service.getDetails(Number)
.then(
response => {
dispatch({ type: Constants.ITEM_GETDETAIL_SUCCESS });
var pDetails = response.response.Results;
return { pDetails };
},
error => {
dispatch({ type: policyConstants.POLICY_GETDETAIL_FAILURE, error});
}
);
}
}
答案 0 :(得分:0)
this.props.getDetails(Number)
中的 componentDidMount
被评估为undefined
,因为getDetails
中的mapDispatchToProps
不会返回任何内容。
像这样更改:
function mapDispatchToProps(dispatch) {
return {
getDetails(Number) {
return dispatch(getActions.getDetails(Number));
}
};
}