我正在尝试对变量进行监视,因此如果它的值发生变化,我会调用其余服务并获得更新计数。
以下是我的代码的样子
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
答案 0 :(得分:5)
您需要在$scope
。
$scope.$watch('abc', $scope.getAbcCnt);
如果您要声明没有$scope
前缀的函数,则现有调用将起作用,但您将无法从视图中访问该函数。如果您不需要从视图中访问该函数,则可以在不使用$scope
的情况下声明该函数,并保留现有的$watch
语句。
答案 1 :(得分:1)
我认为你的意思是
$scope.$watch('abc',$scope.getAbcCnt);