$scope.myFunc = function(privilege){
$scope.check = function(privilege){
return ...
};
$scope.$watch('check(privilege)',function(val){
...
}
}
我的特权变量在每次手表检查时都变得未定义(不能是)?为什么我应该定义它的范围变量或者我错过了Angular Js的任何东西?
$scope.myFunc = function(privilege){
$scope.check = function(privilege){
return ...
};
$scope.$watch('check(privilege)',function(val){
...
}
}
我的特权变量在每次手表检查时都变得未定义(不能是)?为什么我应该定义它的范围变量或者我错过了Angular Js的任何东西?
$watch方法的第一个参数(“watchExpression”)可以是一个 Angular 字符串表达式(根据 $scope 计算),也可以是一个以 $scope 作为第一个参数调用的函数。无法将privilege
作为第一个参数传递给作为函数的 watchExpression。
如果您不想将privilege
值存储在 $scope 上,您可以创建一个闭包。例如,请参阅Vojta 的小提琴。另请参阅https://groups.google.com/forum/#!msg/angular/UJRxn_Y0Dd4/9ha38PC3PCwJ