1

我正在尝试监视一个变量,以便如果它的值发生变化,我会调用其余服务并获取更新的计数。

这是我的代码的样子

function myController($scope, $http) {

    $scope.abc = abcValueFromOutsideOfMyController;    

    $scope.getAbcCnt= function()
    {
        url2 = baseURL + '/count/' + $scope.abc;

        $http.get(url2).success(function (data) {
            $scope.abcCnt = data.trim();
        });
    };

    $scope.$watch('abc',getAbcCnt);
}

但是,我收到以下错误

ReferenceError: getAbcCnt is not defined

我是 AngularJS 的新手,让我知道是否有一些我遗漏的基本概念,以上是不可能的。

这个答案对我 AngularJS 没有帮助 :Basic $watch not working

4

2 回答 2

5

您需要在$scope.

$scope.$watch('abc', $scope.getAbcCnt);

如果您要声明没有$scope前缀的函数,您现有的调用将起作用,但您将无法从视图访问该函数。如果您不需要从视图访问该函数,则可以在没有 the 的情况下声明该函数$scope并保留现有$watch语句。

于 2013-05-10T16:23:16.063 回答
1

我想你的意思是

$scope.$watch('abc',$scope.getAbcCnt); 
于 2013-05-10T16:22:29.663 回答