Page 33 - AngularJS权威教程
P. 33

4.2 就是 HTML 而已   13


                      $rootScope是AngularJS中最接近全局作用域的对象。在$rootScope上附加太多业                             1
                  务逻并不是好主意,这与污染JavaScript的全局作用域是一样的。
                  $scope对象就是一个普通的JavaScript对象,我们可以在其上随意修改或添加属性。                                      2

                  $scope对象在AngularJS中充当数据模型,但与传统的数据模型不一样,$scope并不负责处
              理和操作数据,它只是视图和HTML之间的桥梁,它是视图和控制器之间的胶水。                                                  3
                  $scope的所有属性,都可以自动被视图访问到。假设我们有如下的HTML:

                  <div ng-app="myApp">                                                               4
                    <h1>Hello {{ name }}</h1>
                  </div>
                                                                                                     5
                  我们希望{{ name }}变量是本地$scope的一个属性,效果如图4-1所示。
                  angular.module('myApp', [])                                                        6
                    .run(function($rootScope) {
                      $rootScope.name = "World";
                  });
                                                                                                     7


                                                                                                     8



                                                                                                     9


                                                                                                     10


                                            图4-1  简单的$rootScope绑定                                    11

              4.2 就是 HTML 而已                                                                         12


                  我们的应用负责渲染HTML并将它交给浏览器来显示。这个HTML中包含了各种标准的
                                                                                                     13
              HTML元素,包括AngularJS特有的以及非AngularJS特有的元素。AngularJS不会对不包含
              AngularJS特殊声明的元素进行任何处理。
                                                                                                     14
                  <h2>Hello world</h2>
                  <h3>Hello {{ name }}</h3>
                  上面这个例子中,AngularJS不会处理<h2>元素,但是会在作用域发生变化时更新<h3>元素。                                  15
                  我们可以在AngularJS应用的模板中使用多种标记,包括下面这些。
                                                                                                     16
                   指令:将DOM元素增强为可复用的DOM组件的属性或元素。
                   值绑定:模板语法{{ }}可以将表达式绑定到视图上。
                   过滤器:可以在视图中使用的函数,用来进行格式化。                                                         17
                   表单控件:用来检验用户输入的控件。
                                                                                                     18
   28   29   30   31   32   33   34   35   36   37   38