我只想使用React
, React Redux
, React Router
和Redux Thunk
。
当一个成功的用户创建操作被调度时,我想导航到一个仪表板页面。这是我的异步动作创建器
export function createUser() {
return dispatch => {
dispatch(creatingUser());
return axios.post('/api/users').then(() => {
// how to navigate to dashboard after this action is dispatched?
dispatch(createdUser());
});
};
}
你能告诉我应该用程序导航的确切位置吗?
最初看,我希望"createdUser"返回一个承诺(就像之前问的@ id看)
简而言之,就是这样。
// make sure your function createdUser returns a promise
function createdUser() {
return new Promise((resolve, reject) => {
//simulate some api request
setTimeout( () =>{
// api resolves. in the .then() do:
resolve()
}, 4000)
})
}
// the dispatch will forward resolution of the promise ahead into the
// .then.. then you can redirect.
dispatch(createdUser()).then( ()=> {
console.log("NAVIGATING AWAY")
//browserHistory.push('/some/path')
//assuming you are importing browserHistory
})
我希望我对你有所帮助,如果没有的话:-(,也许我没有完全理解你的需要是什么。让我知道,我会尽量帮你的。