我从REST获取technicalData,然后显示它。用户可以添加,修改一些参数。我看是否数据变脏,然后显示按钮保存。这是代码:
$http.get(someurl).success(function(data){
$scope.technicalData = data;
});
$scope.technicalData = {};
var unregisterTechnicalDataWatch = $scope.$watch('technicalData ', function(newValue, oldValue){
if(Object.keys(oldValue).length !== 0) {
$scope.technicalData._dirty = true;
unregisterTechnicalDataWatch();
}
},true);
你认为这种方法存在任何缺陷吗?
我知道有FormController,但我找不到任何好的例子。
答案 0 :(得分:0)
无论如何,你都希望避免这种做法。我建议使用表单控制器。然后,当表单被弄脏时,您可以执行以下操作来显示/隐藏保存按钮:
<form name="form" ng-submit="save()">
Name: <input ng-model="name"/>
<button type=submit ng-show="form.$dirty">Save</button>
</form>
查看this fiddle。