我有一个index.ejs 页面,其中有一个slideMenu,可在index.ejs 页面中插入其他HTML View 。
每个 html View 都有自己的 Controller 。每个 Controller 都位于其自己的 .js 文件中。我将所有这些脚本包含在 index.ejs 文件中,但这会导致以下问题,并且 HTML View 无法正确加载。
<!DOCTYPE html>
<html ng-app="myapp" xmlns:width="http://www.w3.org/1999/xhtml">
<head>
<title><%= title %></title>
<link rel='stylesheet' href='/stylesheets/style.css'/>
</head>
<body layout="column">
<!-- ANGULAR MATERIAL DEPENDENCIES -->
<link rel="stylesheet" href="https://ajax.googleapis.com/ajax/libs/angular_material/1.0.0/angular-material.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular-animate.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular-aria.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular-messages.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/angular_material/1.0.0/angular-material.js"></script>
<link rel="stylesheet" href="https://fonts.googleapis.com/icon?family=Material+Icons">
<!-- ANGULAR MATERIAL DEPENDENCIES END-->
<md-content>
<div ng-include="'/html/newCode/addCircleTimeSong.html'"></div>
</md-content>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.3.14/angular.js"></script>
<script src="javascripts/newCode/Controller_CircleTimeSongPage.js"></script>
<script src="javascripts/newCode/Controller_ObservationPage.js"></script>
<script src="javascripts/newCode/Controller_CircleTimeActivityPage.js"></script>
</body>
</html>
我收到以下错误:
Error: [ng:areq] http://errors.angularjs.org/1.4.8/ng/areq?p0=CircleTimeSongPageController&p1=not%20aNaNunction%2C%20got%20undefined
最佳答案
如果您写了此声明
var mainApp = angular.module("myapp", ['ngMaterial']);
在所有 Controller 文件中。这就是导致此错误的原因。此语句创建并初始化 myapp
模块。因此,如果您在所有 Controller 文件中使用此语句,则每次都会重新初始化 myApp
,从而出现 Angular 错误。
在其他 Controller 文件中用此语句替换它
var mainApp = angular.module("myapp");
上面的语句意味着获取/引用已经创建/初始化的myapp
模块。
关于javascript - index.ejs 中的 Angular Controller 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41360052/