从基本应用程序获取angularjs错误

时间:2016-01-20 18:09:07

标签: javascript angularjs node.js

代码:

<!DOCTYPE html>
<html>
<head> 
    <!-- angular -->    
    <script src="angular.min.js"></script>
</head>

<body ng-app="app"> 

<div ng-controller="MainController">
  <p>{{ title }}</p>
</div>


<!-- Modules -->
<script src="app.js"></script>

<!-- Controllers -->
<script src="MainController.js"></script>

<!-- Directives -->
<script src="timelineInfo.js"></script>



</body>
</html>

我的所有文件都在同一个文件夹中,因为我在执行src =&#34; js /..."时遇到问题。

我收到错误:

angular.min.js:6 Uncaught Error: [$injector:modulerr] http://errors.angularjs.org/1.5.0-rc.1/$injector/modulerr?p0=app&p1=Error%3…0%20%20at%20c%20(http%3A%2F%2Flocalhost%3A8080%2Fangular.min.js%3A20%3A42

我并不完全明白网站的建议。我在我的索引目录中使用了angular.min.js,因为将它链接到http文件给了我一些问题。我试图做的就是运行一个简单的应用程序,这样我就可以从那里构建,但即使这样也给了我一些问题。

(我从本地机器运行)

谢谢!

--------------------------------- OTHER FILES ------------ ----------

app.js:

var app = angular.module("timelineApp", []);

MainController.js:

app.controller('MainController', ['$scope', function($scope) { 
      $scope.title = 'this is a test'; 
    }]);

3 个答案:

答案 0 :(得分:5)

问题是,在您的html中,app中引用了ng-app模块。在您的app.js中,您的模块名称为timelineApp

您需要同步它们。

更新您的app.js

var app = angular.module("timelineApp", []);

var app = angular.module("app", []);

或者从

更新您的标记
<body ng-app="app"> 

<body ng-app="timelineApp"> 

答案 1 :(得分:1)

你的html代码中的ng-app值应与javascript中的angular模块相同。

例如,在您的情况下,它应该是: -

<ng-app="timelineApp"> // in your html code

或以下: -

var app=angular.module('app',[]); // in your javascript

此外,如果您在此之后仍然遇到错误,那么您可以在同一here

上找到我的一个答案

答案 2 :(得分:0)

您收到的错误指的是您的应用程序未正确引导。因此Angular的编译器不理解它遇到的指令;在这种情况下,那将是ng-controller

了解发生的事情非常重要。

var app = angular.module("timelineApp, []")

随后

<body ng-app="app">

ng-app应该是timelineApp,因为这是您将角度模块的名称设置为。

上面的代码&#34; bootstraps&#34;你的申请。一旦你的应用程序被引导,Angular的编译器就会浏览页面的标记。遇到ng-app指令时,它将查看其值timelineApp并知道它已注册为角度应用程序。

这也有助于它了解您在app上注册了控制器:

app.controller('MainController', ['$scope', function($scope) { 
     $scope.title = 'this is a test'; 
}]);