我的视图是form.html
Size <select ng-model="size" ng-options...>[1..20]</select>
Limiter <select ng-model="limiter">[1..20]</select>
然后在控制器form.js中我
$scope.$watch("limiter", function(newVal, oldVal) {
if (newVal !== oldVal) {
size=Math.min(limiter,size);
}
});
这一切都运行正常,现在我想添加一个sizeMemory,所以如果限制器缩小了大小,然后再次提高,那么大小将会恢复。
这是我尝试过的,但是当限制器改变大小时,大小观察者也会改变sizeMemory。我需要更改此大小的监视功能,以便它仅在用户手动设置大小值时运行:
sizeMemory = size;
$scope.$watch("size", function(newVal, oldVal) {
if (newVal !== oldVal) {
sizeMemory=size;
}
});
$scope.$watch("limiter", function(newVal, oldVal) {
if (newVal !== oldVal) {
wantedSize = Math.max(size,sizeMemory);
size=Math.min(limiter,wantedSize);
}
});