$scope.$watch(var,function) undefined 不是函数



>我有这个错误:尝试将手表添加到范围时出现"未定义不是一个函数"。

我找不到错误。也许我只是盯着这个错误看了很久。为什么在作用域上明确定义$watch方法时会出现未定义的函数错误?

chColorPicker.controller('chColorPickerCtrl', function ($scope,$document,$element) {

    $scope.init = function (event)
    {
    }
    var colorObject = {
        r:'0', 
        g:'0', 
        b:'0', 
        hex:'#000000'
    };
    $scope = colorObject;
    $scope.Z1;
    $scope.Z2;
    var onChangeColor = function(newValue,oldValue)
    {
        console.log('change');
    }
    $scope.$watch("r",onChangeColor); //<-- the error appears here.
});

您正在更改$scope:

$scope = colorObject;//error in this line

因此,当您使用 $scope.$watch() 时会出现错误,因为它不再调用 angular 的$scope。

最新更新