我目前正在尝试管理反应应用中的数据依赖项。通常我会使用waitFor
。但这并没有帮助,因为它不会等待异步数据提取,只是为了同步操作。
Depender:
@bind(Actions.showUserForm)
showUserForm(id) {
const user = UserStore.getState()[id];
this.setState({form: someAction(user)});
}
Dependee:
@bind(Actions.getUser, showUserForm.showUser)
getUser(id) {
this.getInstance().getUser(id);
}
@bind(Actions.getUserSucc)
getUserSucc(user) {
this.setState({ [user.id]: user })
}
Dependee Source
export default {
getUser: {
remote: (state, id) => UserAPI.get(id),
success: Actions.getUserSucc
},
};
Depender需要以某种方式等待Dependees异步响应与用户数据。我可以只听取success
动作,但每次从后端获取用户时都会触发Depender。
对于那些问题,是否有惯用的解决方案?