2016-04-14 32 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