我正在设置一个应用程序,以使用react / redux作为前端和django作为后端来提交表单。问题是提交需要一些时间来处理,因此我需要在等待提交成功之前设置等待加载程序警报。 有什么建议吗?
这是我的发布动作:
export const addCandidate = candidate => (dispatch, getState) => {
axios
.post("http://localhost:8000/api/candidates/", candidate, tokenConfig(getState))
.then(res => {
dispatch(createMessage({ addCandidate: "Formulaire envoyé" }));
swal("", "Votre candidature a été enregistrée avec succès", "success");
dispatch({
type: ADD_CANDIDATE,
payload: res.data
});
})
.catch(err =>
dispatch(returnErrors(err.response.data, err.response.status))
);
};
答案 0 :(得分:1)
您可以添加一个名为loading的状态参数,该状态参数的初始值将为false,在触发请求之前,将其值设置为true,并在解决请求后将其设置为false
this.setState({loading:true});
axios.post().then(res=>{
// your code
this.setState(false);
})
然后在您的组件中渲染
{this.state.loading && <Spinner />}