我在redux中使用相同的形式和相同的状态来添加和编辑.当我调用api获取数据进行编辑时,我们更改路由器以在响应到达之前添加表单.所有表单数据都将自动填充以添加项目,因为我使用相同的状态进行添加和编辑.有没有办法防止这种情况发生?
我的动作创作者:
fetchById: function (entity, id) {
return function (dispatch) {
dispatch(apiActions.apiRequest(entity));
return (apiUtil.fetchById(entity, id).then(function (response) {
dispatch(apiActions.apiResponse(entity));
dispatch(actions.selectItem(entity, response.body));
}
}
}
Run Code Online (Sandbox Code Playgroud)
由于响应较晚,因此selectItem会延迟发送.当我打开表单添加项目时,此表单将填充响应中的此数据.