1 回答
TA贡献1859条经验 获得超6个赞
您可以将这些操作创建者转换为async版本,然后您可以等待它们,以便它们按顺序执行。
https://medium.com/@gaurav5430/async-await-with-redux-thunk-fff59d7be093
例如在你的fetchData
function fetchData() {
return async (dispatch) => {
const url = 'http://www.boredapi.com/api/activity/'
try{
const res = await fetch(url)
const activity = await res.json();
dispatch({type: "FETCH_DATA", payload: activity})
}
catch (error) {
console.log(error);
}
}
一旦它们出现,async您就可以在您的中等待它们handleSave(一旦您将其转换为async),这将确保它们按顺序被调用。
handleSave = async () => {
await this.props.postData({
name:this.props.activity,
type_name: this.props.type
})
await this.props.fetchList()
await this.props.fetchData()
}
添加回答
举报