我正在尝试在AngularJS中打印Hello World,我创建了名为testController的JavaScript文件,但不幸的是它显示了此错误

javascript - 如何在angularjs中打印Hello World-LMLPHP

这是HTML:

<!DOCTYPE html>
<html lang="en">
<head>
<title>AngularJS</title>

<script type="text/javascript" src="../../app/controllers/testController.js"></script>
</head>
<body ng-app="app">
    <div ng-controller="testController">
        <h2>{{message}}</h2>
    </div>
</body>
</html>


和这个testController代码

var app = angular.module("app", []);
app.controller("testController", function ($scope) {
    $scope.message = "Hello, AngularJS";
});


问题出在哪里?谁能解释?

最佳答案

错误明确指出testController功能没有在app模块中注册。您的应用程序中可能包含更多文件(您已缩减代码以保留相关信息)。似乎在每次注册每个文件之前都要重新定义模块,如下所示

var app = angular.module("app", []);
app.controller("myOtherController", function ($scope) {
    //Code here
});


因此,在这种情况下,再次创建了app,并且清除了旧的注册组件。 myOtherController已在app模块中注册。要解决此问题,您不应一次又一次声明模块。一次定义它,并在其他地方使用它。

app.module.js

angular.module('app', []);


testController.js

angular.module("app")
.controller("myOtherController", function ($scope) {
    //Code here
});

09-11 14:18