2016-04-14 37 views
-1

我是AngularJS的新手,所以請原諒我這個轉儲問題。 我有錯誤通過點擊donot工作角js警報

Cannot set property 'test' of undefined 

angularjs

var App = angular.module('StartModule', []); 
App.controller('ModalDemoCtrl', [ 
function($scope) { 

    $scope.test = function() { 
     alert("12312"); 
    } 
} 
]); 

HTML

<body ng-app="StartModule"> 
<div ng-controller="ModalDemoCtrl"> 
<div ng-click="test()">11111</div> 
</div> 
<body> 
+0

下一次,請在問問題之前,徹底檢查你對像這樣基本的錯誤文檔代碼。 – mrahhal

回答

0

你只是錯過$scope到控制器的第二個參數:

var App = angular.module('StartModule', []); 
App.controller('ModalDemoCtrl', [ $scope, function($scope) { 
    $scope.test = function() { 
     alert("12312"); 
    } 
}]); 
0

你錯過ŧ他$scope依賴,你需要在你的控制器注入它:

App.controller('ModalDemoCtrl', ['$scope' 
    function($scope) { 

這就是爲什麼$scope變量是不確定的,你沒有真正注入其中的任何依賴。

這裏使用了內嵌陣列譯註:https://docs.angularjs.org/guide/di