Angular $watch 功能未按预期工作

Angular $watch function not working as intended

所以我在指令的 link 函数的作用域上有以下观察者。我已将此模式用于另一个变量,它可以工作,但这个不行。有没有人有什么建议。代码如下

    $scope.$watch('QOLFactory.surveysInView', function(newValue, oldValue, scope){
        console.log(QOLFactory.surveysInView);
        console.log(newValue, oldValue);
        scope.surveys = newValue;
        scope.surveyData = generateSurveyTotals(newValue);
});

第一个控制台日志打印 QOLFactory.surveysInView 的正确值,但第二个 console.log 打印未定义,未定义。我做错了什么吗?

提前致谢。

为了让 watcher on 指令能够访问注入到控制器中的服务,必须将该服务分配给 $scope 变量。这使得观察者的行为符合预期,returns 正确的值。