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

标签 javascript angularjs html

我遇到这个错误:在尝试向作用域添加监视时出现“undefined is not a function”。

我找不到错误。也许我只是盲目地盯着这个错误看太久了。 当 $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。

关于javascript - $scope.$watch(var,function) undefined 不是函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28258143/

相关文章:

javascript - 该网站使用了哪些库?

javascript - Touch API(例如 touchstart)在 MS Edge 中不起作用

javascript - 上传后如何从 dropzone 中删除所有文件

javascript - 单击事件在带有 angularjs 的 iPad 中无法正常工作

javascript - Angular 分量中的对齐问题(CSS 问题)

Javascript在文本上剪切相同的第二个字符

javascript - onblur 不工作但 onclick 是

javascript - 无法将坐标精确到 Canvas

javascript - 如何使用ajax jquery表单提交与其他表单元素一起上传图像

javascript - 在html中创建6个复选框