現在、私は次の問題に遭遇しました。私たちはフォームの重いアプリケーションに取り組んでおり、優れたユーザーエクスペリエンスを求めていたため、保存/更新ボタンをどこにでも配置するのをやめようとしました.
現在、$watch
すべてのフォームの変更を試みていますが、モデルが更新されるとスコープが更新され、10 進数/金額の値で問題が発生するため、これは正しく機能しません。
何がいいですか?まだsave
ボタンがごちゃごちゃしていたり、Gmail のようなものだったりしますか?
保存ボタンなしでこれを行う良い方法は何ですか。
/* EDITED */ 現在、このメソッドを使用してフォームを更新しています。最初にオブジェクトのスコープをコピーし、日付が取得された後に設定されたオブジェクトと同じかどうかを確認します。
$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);
現在、このコードは 10 進数を更新できないため、ややこしいと思います。しかし、現在、私はより良い解決策を持っていません。(ボタンを使用してフォームを送信したくないので、インタラクティブに行う必要があります)。