我正在努力学习AngularJS。我有一个HTML页面,在那里我试图注入模块,但得到了一个错误
主js文件:
var classificationModule = angular.module('mainapp',[]);
classificationModule.controller('firstcontroll',function(){
$scope.text="Goodday"
});
HTML页面:
<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<meta name="layout" content="main"/>
<title>Classification Toolkit for Grails</title>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.21/angular.js"></script>
<asset:javascript src="main.js"/>
</head>
<body >
<div ng-app='mainapp' ng-controller='firstcontroll'>
Hello, {{text}}
</div>
</body>
</html>
得到以下错误:
ReferenceError: $scope is not defined
我不知道我做错了什么。
尝试在函数中传递$scope
。
var classificationModule = angular.module('mainapp', []);
classificationModule.controller('firstcontroll', function($scope) {
$scope.text = "Goodday"
});
<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<meta name="layout" content="main" />
<title>Classification Toolkit for Grails</title>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.21/angular.js"></script>
<asset:javascript src="main.js" />
</head>
<body>
<div ng-app='mainapp' ng-controller='firstcontroll'>
Hello, {{text}}
</div>
</body>
</html>
您应该编写
var classificationModule = angular.module('mainapp', []);
classificationModule.controller('firstcontroll', function($scope) {
$scope.text = "Goodday"
});
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<div ng-app='mainapp' ng-controller='firstcontroll'>
Hello, {{text}}
</div>
$scope是angular JS的依赖注入系统提供的一个变量,基本上它通过将提供者与命名参数匹配来工作。