【发布时间】:2015-12-23 10:15:10
【问题描述】:
我的通量工作流程到期this article。
SignInView ===> AppActionCreators ===> SomeService
| ||
Promise <============= ||
||
|| ======================> SIGN_IN_SUCCESS
SignIn 视图调用AppActionCreators#signIn,后者调用SomeService。所有SomeService 方法都返回promise,所以AppActionCreators 在promise 解决后触发一个动作。
问题:什么是在singIn 成功时以编程方式转换到IndexView 的真正方法?请看代码:
AppActionCreators.js:
AppActionCreators = {
signIn(username, password, signInCb) {
SomeService.signIn(username, password).then(response => {
//QUESTION: trigger action and make transition in Store or pass `signInCb` from `SignIn` view?
AppDispatcher.dispatch({type: ActionTypes.SIGN_IN_SUCCESS, response});
//Or?
signInCb();
});
}
}
SignIn.react.js
class SignIn extends Component, Router.Navigation {
handleSubmit(){
const signInCb = () => this.transitionTo('index', {this.state.data})
AppActionCreators.signIn(this.state.user, this.state.password, signInCb);
}
}
更新:改写版本的问题:使用 SIGN_IN_SUCCESS 操作 + 显示/隐藏登录/索引视图与传递转换回调?
【问题讨论】:
标签: javascript reactjs flux react-router