Javascript AngularJS:如何比较newValue和oldValue
我正在使用为Angular找到的窗口调整指令。除了多重触发问题外,它工作得很好。我正在使用地图,因此我无法根据地图分区高度进行多次重画。该示例将触发3次,即使值没有更改。我知道我需要添加一个if语句newValue!=旧值的手表,但我得到了太多的摘要周期错误。如何将其更改为使用if语句? 更新 我如何实现这一点?Javascript AngularJS:如何比较newValue和oldValue,javascript,css,angularjs,Javascript,Css,Angularjs,我正在使用为Angular找到的窗口调整指令。除了多重触发问题外,它工作得很好。我正在使用地图,因此我无法根据地图分区高度进行多次重画。该示例将触发3次,即使值没有更改。我知道我需要添加一个if语句newValue!=旧值的手表,但我得到了太多的摘要周期错误。如何将其更改为使用if语句? 更新 我如何实现这一点? 您应该考虑在窗口大小调整上使用节流功能。我该怎么做呢搜索一个实现我有,所有的例子都在观察ng模型选项的变化。我需要查看指令窗口调整事件的大小,你应该考虑在窗口大小调整上使用节流功能。
您应该考虑在窗口大小调整上使用节流功能。我该怎么做呢搜索一个实现我有,所有的例子都在观察ng模型选项的变化。我需要查看指令窗口调整事件的大小,你应该考虑在窗口大小调整上使用节流功能。我该怎么做呢搜索一个实现我有,所有的例子都在观察ng模型选项的变化。我需要看指令窗口。对不起,
app.directive('resize', function ($window) {
return function (scope, element, attr) {
var w = angular.element($window);
scope.$watch(function () {
return {
'h': window.innerHeight,
'w': window.innerWidth
};
}, function (newValue, oldValue) {
console.log(newValue, oldValue);
scope.windowHeight = newValue.h;
scope.windowWidth = newValue.w;
scope.resizeWithOffset = function (offsetH) {
scope.$eval(attr.notifier);
return {
'height': (newValue.h - offsetH) + 'px'
};
};
}, true);
w.bind('resize', function () {
scope.$apply();
});
}
});