设为首页 加入收藏

TOP

AngularJS入门讲解1:angular基本概念
2015-02-02 14:09:43 来源: 作者: 【 】 浏览:26
Tags:AngularJS 入门 讲解 angular 基本 概念

AngularJS应用程序主要有三个组成部分:


模板(Templates)


模板是您用HTML和CSS编写的文件,展现应用的视图。 您可给HTML添加新的元素、属性标记,作为AngularJS编译器的指令。 AngularJS编译器是完全可扩展的,这意味着通过AngularJS您可以在HTML中构建您自己的HTML标记!


应用程序逻辑(Logic)和行为(Behavior)


应用程序逻辑和行为是您用java script定义的控制器。AngularJS与标准AJAX应用程序不同,您不需要另外编写侦听器或DOM控制器,因为它们已经内置到AngularJS中了。这些功能使您的应用程序逻辑很容易编写、测试、维护和理解。


模型数据(Data)


模型是从AngularJS作用域对象的属性引申的。模型中的数据可以是java script对象、数组或基本类型,他们都属于AngularJS作用域对象。


AngularJS通过作用域来保持数据模型与视图界面UI的双向同步。一旦模型状态发生改变,AngularJS会立即刷新反映在视图界面中,反之亦然。


举个例子:


?




? ?
? ? ? ?
? <script>
  function PhoneListCtrl($scope) {
?     $scope.phones = [
? ?     {"name": "Nexus S","snippet": "Fast just got faster with Nexus S."},
? ?     {"name": "Motorola XOOM? with Wi-Fi","snippet": "The Next, Next Generation tablet."},
? ?     {"name": "MOTOROLA XOOM?", "snippet": "The Next, Next Generation tablet."}
?     ];
  }
 


?


    ? ?

  • ? ? ? {{phone.name}}
    ? ?

    {{phone.snippet}}


    ? ?

  • ?



?


这里我们使用ngRepeat指令和两个双大括号包裹起来的AngularJS表达式——{{phone.name}}和{{phone.snippet}}。


  • 标签里面的ng-repeat="phone in phones"语句是一个AngularJS迭代器。这个迭代器告诉AngularJS用第一个
  • 标签作为模板,为模型列表phones中的每一部手机创建一个
  • 元素。


    包裹在phone.name和phone.snippet周围的双大括号标识着数据绑定。和常量计算不同的是,这里的表达式实际上是一个数据模型的引用,这些数据模型我们在PhoneListCtrl控制器里面定义就好了。


    在PhoneListCtrl控制器里面初始化了数据模型,尽管控制器看起来并没有起到什么控制的作用,但是它在这里起到了至关重要的作用。通过给定我们数据模型的定义,控制器允许我们建立模型和视图之间的数据绑定。


    我们是这样把表现层,数据模型联系在一起的:PhoneListCtrl——控制器方法的名字,和标签里面的ngController指令的值相匹配。手机模型的数据此时与注入到我们控制器函数的作用域($scope)相关联。这个控制器的作用域对所有标记内部的数据绑定有效。


    AngularJS的作用域理论非常重要:一个作用域可以视作模板、模型和控制器协同工作的粘接器。AngularJS使用作用域,同时还有模板中的信息,数据模型和控制器,帮助模型和视图分离。


    希望你喜欢,并分享我的工作~带你走近AngularJS系列


  • 】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
    分享到: 
    上一篇11个实用但你可能不知道的Python.. 下一篇AngularJS入门讲解2:过滤器和双..

    评论

    帐  号: 密码: (新用户注册)
    验 证 码:
    表  情:
    内  容: