Angular js $scope is Undefined



我在一个项目中使用angular js。我对angular很陌生,下面的错误让我对使用angular更加困惑。

我有一个js函数

function ShowHideEditOptions(id) {
            var editOptions = document.getElementById("editOptions");
            editOptions.style.display = "block";
            selectedNodeId = id;
 InitializeMapForSelectedNode(); 
        }

我想在ShowHideEditOptions(id){}函数中调用InitializeMapForSelectedNode();角度函数。

有可能吗???

当我这样做时,它会给我一个错误,说$scope未定义

这是我的角度控制器

<script>
    var app = angular.module('app', ['kendo.directives']);
    var selectedNodeId = "";
    app.controller("locationController", function ($compile, $scope, $log, $timeout) {    
$scope.InitializeMapForSelectedNode = function () {
                InitializeMapForSelectedNode($scope);
            }

    });
</script>

角度函数是

function InitializeMapForSelectedNode($scope) {
    var locations = $scope.MeterList; // this is where the error occur
    .....
}

这个函数使用了以前绑定的$scope.MeterList变量。这是firebug检测到$scope是Undefined错误的地方。

尝试使用$scope 进行调用

<script>
var app = angular.module('app', ['kendo.directives']);
var selectedNodeId = "";
app.controller("locationController", function ($compile, $scope, $log, $timeout) {    
$scope.InitializeMapForSelectedNode = function () {
            $scope.InitializeMapForSelectedNode();
        }

});

最新更新