AngularJS系列——入门

来源:互联网 发布:杭州java应届生招聘 编辑:程序博客网 时间:2024/06/06 02:42

什么是AngularJS?

AngularJS 是一个 JavaScript 框架。它可通过 <script> 标签添加到 HTML 页面。简单地说,AngularJS把原来常在后台实现的模板渲染,路由的功能都移到了前端,扩展了html使支持动态视图,从根源上解决了html不适合动态视图的问题。直接在html里绑定数据和逻辑,思路大不相同。

AngularJS 使得开发现代的单一页面应用程序(SPAs:Single Page Applications)变得更加容易。

  • AngularJS 把应用程序数据绑定到 HTML 元素。
  • AngularJS 可以克隆和重复 HTML 元素。
  • AngularJS 可以隐藏和显示 HTML 元素。
  • AngularJS 可以在 HTML 元素"背后"添加代码。
  • AngularJS 支持输入验证。

AngularJS 扩展了 HTML

AngularJS 通过 ng-directives 扩展了 HTML。

ng-app 指令定义一个 AngularJS 应用程序。

ng-model 指令把元素值(比如输入域的值)绑定到应用程序。

ng-bind 指令把应用程序数据绑定到 HTML 视图。


AngularJS特性和优点

双向数据绑定

声明式依赖注入

解耦应用逻辑, 数据模型和视图

完善的页面指令

定制表单验证

Ajax封装


与jQuery的比较

    jQuery
        JS函数库
        封装简化dom操作

        使用jQuery的思想是:我拥有一个DOM元素并且想让它去做某件事。也就是命令式编程思想。

    angular
        JS结构化框架
        主体不再是DOM, 而是页面中的动态数据

       使用angular的思想是:我需要完成什么任务,然后接着设计你的应用,最后再去设计你的视图view层。也就是声明式编程思想。

-------------------------补充于2017.08.01------------------------------------------------

这两种框架的使用场景:

 1、DOM不是第一优先级的时候。

2、考虑到效率的问题,在框架内它就支持单元测试,简化了测试上的麻烦。另外,降低模块间的耦合度也有利于程序员梳理项目逻辑,便于维护和调试。

3、考虑到声明式语言的优势。

综上所述:两者是出于不同的目的被创建的,解决的也是不同的问题。当一个项目的重点是数据展示和执行,而不是分析,此时可能AngularJS就会更胜一筹。对于框架的选择,你要考虑到很多因素,需要整体的构思。AngularJS总体上还是一个不错的选择,可以提高程序员的效率,相对减少Web开发中的维护成本。

扩展,什么是命令式编程,什么是声明式编程

       jQuery的一个常见问题就是它是命令式编程,就意味着你要告诉计算机如何达成某项目的,其实你想要的就是程序运行的结果。而声明式编程则转移了重点,它只是告诉机器你想要的结果,让机器自己实现这个结果。JavaScript就是一种命令式语言,但HTML,和它指导的AngularJS就是声明式的,只需要告诉计算机你需要的展现形式,至于细节就由机器处理了。这样,完成一个任务的代码就大幅缩减了,代码质量也更高了。

----------------------------------------------------------------------------------------------------

这两篇文章说的不错,

http://www.cnblogs.com/Ricky-Huang/p/5131989.html

http://www.imooc.com/qadetail/174473


AngularJS的主要用途是构建单页面(SPA)Web网站或Web App,应用有饿了么

0 0
原创粉丝点击