オブジェクト スコープ変数を監視するには$scope.$watch
、withobjectEquality
を true または$scope.$watchCollection
より良いに設定しますか?
$scope
入力要素とビューで更新されたオブジェクト変数 (15 個の属性など、ネストされた 2 レベルの深さ) の場合、 set をに設定するとng-model
どの程度悪いでしょうか? これは避けるべき大きなことですか?$scope.$watch
objectEquality
true
$watchCollection
より良い解決策はありますか?
AngularJS アプリのパフォーマンスを向上させるための簡単な方法を探しています (まだ v1.2.2 にこだわっています)。
// ctrl scope var
$scope.filters = {
name: '',
info: {test: '', foo: '', bar: ''},
yep: ''
// etc ...
}
// ctrl watch ?
$scope.$watch('filters', function(newVal, oldVal) {
if(newVal !== oldVal) {
// call with updated filters
}
}, true);
// or ctrl watch collection ?
$scope.$watchCollection('filters', function(newVal, oldVal) {
if(newVal !== oldVal) {
// call with updated filters
}
});
// view input with ng-model
<input type="text" ng-model="filters.name" />
<input type="text" ng-model="filters.info.test" />
<input type="text" ng-model="filters.yep" />
// etc ...