我有一个带有React前端的Node后端。当用户创建电影评论时,发布请求将由axios处理。此后,用户被带到主页,但是评论还没有到那里。当我刷新页面时,将显示评论。
我该如何解决此问题,以便提交后在首页中看不到评论的用户不会感到困惑?每当用户点击首页时,我都应该重新提取吗?还是React在幕后但早就这样做了,所以评论没有注册?
我的redux请求代码:
减速器
export const postNewReview = review => (dispatch, getState) => {
return apiCall("post", `http://localhost:8000/review`, review)
.then(res => {})
.catch(err => addError(err.message));
};
api调用功能
export function apiCall(method, path, data){
return new Promise((resolve,reject) => {
return axios[method.toLowerCase()](path,data)
.then(res => {
return resolve(res.data);
})
.catch(err => {
return reject(err.response.data.error);
});
});
}
处理提交
handleSubmit = (e) => {
e.preventDefault();
this.props.postNewReview(this.state);
this.setState({user: '', title: '', image: '', text: ''});
this.props.history.push('/');
}