我正在尝试在成功调用API端点后更新范围内的值。 之前我在用户点击“保存”后立即更新了这些值。但是,这不太理想,因为即使API调用由于某种原因失败,UI仍然反映了新的'值,直到刷新页面。
以下是我的控制器中的代码有效,但过早更新id
':
vm.setId = function(user) {
var _onSuccess = function() {
alertService.success('Set ' + user.email + ' ID to ' + user.edit.id.value);
};
var _onError = function(err) {
alertService.danger(err.data.message);
};
user.id = user.edit.id.value;
usersService.setId({
email: user.email,
id: user.edit.id.value
}, {}).$promise.then(
_onSuccess,
_onError
);
};
这是我尝试使用的代码,但id
在成功保存时未更新为新值:
vm.setId = function(user) {
var _onSuccess = function() {
user.id = user.edit.id.value;
alertService.success('Set ' + user.email + ' ID to ' + user.edit.id.value);
};
var _onError = function(err) {
alertService.danger(err.data.message);
};
usersService.setId({
email: user.email,
id: user.edit.id.value
}, {}).$promise.then(
_onSuccess,
_onError
);
};
答案 0 :(得分:0)
抓住了我的问题。我在我的模板{{::user.id}}
中使用单向数据绑定。将此更改回双向绑定{{user.id}}
,修复了我的问题。