最简单的AngularJS代码不起作用

时间:2014-12-17 14:21:59

标签: javascript angularjs

在我的网站上,我正在开发一个简单的AngularJS功能 - 从模块控制器发出警报。这是我的代码:

app1.js:

(function() {
    var app1 = angular.module('myApp', []);

    app1.controller('MyController', function() {
        alert('Hey');
    });
});

的index.html:

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" ng-app="myApp">
<head>
    <title>Angular</title>

    <script src="Scripts/angular.min.js"></script>
    <script src="Scripts/app1.js"></script>
</head>
<body ng-controller="MyController">
    {{5 + 3}}
</body>
</html>

导致我的浏览器应该是:

  

8

发出警告并发出消息&#34;嘿&#34;,对吗?我得到的只是在我的浏览器中:

  

{{5 + 3}}

任何想法如何解决这个问题?

1 个答案:

答案 0 :(得分:12)

您从未调用应用和控制器初始化代码,您需要执行此操作:

(function() {
    var app1 = angular.module('myApp', []);

    app1.controller('MyController', function() {
        alert('Hey');
    });
})(); // <=== Change is here

说明:

(function() { /*code*/});

将创建一个匿名函数,但不会调用该函数。要调用它,您需要在()

之前的末尾添加;
(function() { /*code*/})();
// Here ----------------^

更多:http://en.wikipedia.org/wiki/Immediately-invoked_function_expression