获得范围属性的旧值

时间:2015-08-25 14:33:37

标签: javascript angularjs angularjs-scope watch

是否有可能获得范围属性的旧值?我有这样的代码,里面有评论:

$scope.$watch(function() {
    // here I need to get old value of some scope property, for example $scope.userInfo;
}, function() {
    $scope.callSomeFunction();
}, true);

3 个答案:

答案 0 :(得分:3)

是的,它在第二个功能中 - 所以要观看userInfo

$scope.$watch(function() {
    return $scope.userInfo;
}, function(newValue, oldValue) {
    console.log(oldValue);
    $scope.callSomeFunction();
}, true);

答案 1 :(得分:1)

如果它关于您的手表正在观看的属性,那么您只需在回调函数中获取该属性。

$scope.$watch('property', function(newValue, oldValue) {})

答案 2 :(得分:0)

尝试这种简单的方法

$scope.$watch('userInfo', function(newValue, oldValue) {    
return oldValue;    
})