angularJS在github上面进行一个代码的托管
地址:https://github.com/angular/angularjs.org
注意:需要兼容IE8的同学请下载1.3之前的版本,在1.3之后已经放弃了IE8,估计是为了以后大版本升级做铺垫吧。各个版本的下地址在这里https://github.com/angular/angular.js/releases
新建一个hello.html
<script src="/soa-rest/static/app-js/angular.js"></script>
<script src="/soa-rest/hello.js"></script>
angular.js是 NG的核心文件必须导入 hello.js 是书写我们自己的js代码文件。
在hello.js中加入如下代码
var app = angular.module('helloModule',[])
.controller('helloController',['$scope',function($scope){
$scope.world = 'World !!';
}]);
第一行
var app = angular.module('helloModule',[])
告诉NG我要创建一个新的模块,第一个参数是模块的名字‘helloModule’,第二个参数是一个数组,传入所依赖的模块名称。这里我们只是一个简单的hello,不需要以来其他模块,所以传入一个空数组即可。
第二行
.controller('helloController',['$scope',function($scope){
$scope.world = 'World !!';
}]);
NG是支持链式编程的,可以直接点,也可以使用app.的方式,看自己习惯,我更习惯链式编程的方式。这里看到一个新的单词‘controller’,没有错这就是NG中mvc的控制器的创建方式,第一个参数是控制器的名称,第二个参数是一个数组。在数组中第一二个参数是‘$scope’,scope的意思是域,同样在NG中他同样也是作用域的概念,这是一盒NG内置的对象,也可以理解为当前控制器作用域,NG中使用它来进行双向数据绑定,方法绑定等等。第二个参数是匿名函数,NG在执行的时候看到我们声明在匿名函数之前的‘$scope’便会把$scope注入给我们,我定义一个参数接受即可,如果没有找到我们所需要的便会抛出Error(是不是和spring的注入一样呢?思想是一样呀,嘿嘿!)。在匿名方法内部声明一个局部变量为world,并且赋值。这样子控制器就算写好了。
在hello.html页面中编写
<body ng-app="helloModule">
<div ng-controller="helloController">
hello <span ng-bind="world"></span>
<br>
hello <span>{{world}}</span>
</div>
</body>
第一行中的body中有一个属性为ng-app,意思为程序的入口,等同于java中的main方法。一个应用一般存在一个入口即可。ng-app的值其实就算我们刚刚声明的模块的名称。接下来的第二行一个DIV 中有一个属性 ng-controller 看单词意思就知道是ng的控制器了,value是刚刚创建的控制器的名称即可。在NG中有两种获取值得方式 ,第一种方式就算使用{{}}两对大括号的方式,这种方式是存在一定的问题的。在刷新速度过快活着网络卡顿的时候,会将{{key}}这种代码级别的展示给用户。第二章方式很好的解决了这一问题,使用NG提供的属性ng-bind 即可,简单把!以上步骤完成之后刷新hello.html 。
hello World !!
hello World !!
两个hello World就打印在页面上了。
已有 0 人发表留言,猛击->> 这里<<-参与讨论
ITeye推荐