目前我遇到了以下问题, 我们正在开发一个表单繁重的应用程序,并希望获得良好的用户体验,因此我们试图停止在任何地方都有一个保存/更新按钮。
目前我们尝试$watch
每次表单更改,但这不会正常工作,因为它会在模型更新时更新范围,从而导致十进制/货币值出现问题。
你更喜欢什么?仍然是凌乱的save
按钮或像Gmail这样的东西?
没有保存按钮,有什么好方法可以做到这一点。
/ *已编辑* / 目前我们使用此方法更新表单。 它首先复制对象中的作用域,并检查它是否与拉出日期后设置的对象相同。
$scope.$watch('task', function(scope) {
console.log($scope.updateForm);
scopeObject = angular.copy(scope);
if(scope !== undefined) {
if(!(_.isEqual(scopeObject, mainObject))){
//scope_copy.request_date = $filter('date')(new Date(scope.request_date), 'fullDate');
console.log('update');
scope.$update({pk: $routeParams.taskId}, function() {
scope.request_date = $filter('date')(scope.request_date);
mainObject = angular.copy(scope);
});
mainObject = angular.copy(scope);
}
}
}, true);
目前我认为这段代码有些混乱,因为它无法更新十进制数字。 但目前我没有更好的解决方案。 (我不想使用Button来提交表单,它应该以交互方式完成)。