AngularJS - 如何在module.run部分中执行代码

时间:2015-07-13 15:55:38

标签: angularjs

我试图谷歌这个,但找不到任何有用的东西。

index.html看起来像这样:

<!DOCTYPE html>
<html data-ng-app="app">
<head>
...
    <script src="/script/jquery.js"></script>
    <script src="/script/angular.js"></script>
    <script src="/script/app_module.js"></script>
...
</head>
<body>
...
</body>
</html>

和app_module.js是这样的:

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

app.run(function() {
    console.log("app run");
});

我没有得到任何控制台输出。 顺便说一句,我在jsfiddle中尝试了同样的事情,它运作得很好。

我很困惑。任何想法为什么它不运行?

AngularJS 1.4

2 个答案:

答案 0 :(得分:0)

/的开头添加src,可确保路径不是相对的,而是网站的read from the root

删除你的起始斜杠,root可能在其他地方,在父文件夹中:

<script src="script/jquery.js"></script>
<script src="script/angular.js"></script>
<script src="script/app_module.js"></script>

答案 1 :(得分:0)

如果有其他人被同样的情况带到这里,

问题发生在我的第二个脚本文件开头的var app = angular.module('app', []);行重复。

将其从那里移除并仅在app_module.js开始时离开(如问题中所述),问题就消失了。

设置应用程序&#39;第二个文件中的变量,在第一个文件中使用angular.module('app', []).run( ... ),在第二个文件中设置变量时,将其设置为var app = angular.module('app');。没有第二个参数,因为模块已经注册。