AngularJS是一款优秀的前端JS框架,已经被用于Google的多款产品当中。AngularJS有着诸多特性,最为核心的是:MVVM、模块化、自动化双向数据绑定、语义化标签、依赖注入、等等。

前端一些术语

类库 - 类库是一些函数的集合,它能帮助你写WEB应用。起主导作用的是你的代码,由你来决定何时使用类库。类库有:jQuery,YUI,Protype等

框架 - 框架是一种特殊的、已经实现了的WEB应用,你只需要对它填充具体的业务逻辑。这里框架是起主导作用的,由它来根据具体的应用逻辑来调用你的代码。框架有:knockout、sproutcore等。

AngularJS的一些技术特点

  1. 使用双大括号{{}}语法进行数据绑定;
  2. 使用DOM控制结构来实现迭代或者隐藏DOM片段;
  3. 支持表单和表单的验证;
  4. 能将逻辑代码关联到相关的DOM元素上;
  5. 能将HTML分组成可重用的组件
  6. 双向绑定(html影响代码,代码也影响html)
  7. 路由功能(单页面实现类似多URL的功能)

MVVM的实现

数据模型(data-model)关联到视图(UI)上,让前台开发人员可以很方便的去建立完整的页面,数据可以使用测试数据,最后可以将获取数据的部分抽象成一个个的API接口即可,而不需要真正等待后台人员将程序开发完,前台人员就可以对已经完成的功能进行测试了。

代表性的实例

<!doctype html>
<html ng-app>
<head>
<script src="http://code.angularjs.org/angular-1.0.1.min.js"></script>
</head>
<body>
Hello {{'World'}}!
</body>
</html>

使用{{}}乱起来的代码就是angularJS的代码,使用引号括起来表示它是个字符串,下面看一下在网站上经常看到的代码,如果你登陆了就显示hellow yourname,否则就显示

hello world,这是个很经典的例子

<!doctype html>
<html ng-app>
<head>
<script src="http://code.angularjs.org/angular-1.0.1.min.js"></script>
</head>
<body>
Your name: <input type="text" ng-model="yourname" placeholder="World">
<hr>
Hello {{yourname || 'World'}}!
</body>
</html>

几个重要的angularJS的指令(Directive)

Directive命名可以用驼峰式的风格的命名,如ngBind,ngApp,但directive也可以支蛇底式的命名,需要通过 :(冒号)-(减号)或 _(下划线)连接,如ng:app,ng-app,ng_app它们是等价的

ng-app:代码的作用域(一个页面只允许有一个ng-app)

ng-controller:控制器作用域(一个ng-app可以包括多个controller)
ng-repeat:集合遍历
ng-model:双向绑定
ng-click:单击事件绑定
ng-if:条件绑定
ng-bind:变量绑定到指定标签
 
下一讲,我们将开始测试具体的实例……

最新文章

  1. 三星首次更新Gear VR虚拟现实浏览器Samsung Internet
  2. PHP实例开发(3)PHP中MVC学习之ThinkPHP
  3. aa5
  4. 神马是 NaN,它的类型是神马?怎么测试一个值是否等于 NaN?
  5. 基于MVC4+EasyUI的Web开发框架经验总结(15)--在MVC项目中使用RDLC报表
  6. smarty基本语法
  7. su成别的用户后仍以原来私钥访问远程机器
  8. java阿拉伯数字表示的金额转换成中文大写金额
  9. SWF Web播放器
  10. CentOS 6.5安装MySQL中文乱码问题解决
  11. onmouse事件
  12. Bootstrap3 概述
  13. Docke--Dockerfile实践
  14. JVM垃圾回收机制之对象回收算法
  15. Thread(生产者和消费者) wait、notify、notifyAll
  16. [luogu4072][bzoj4518][SDOI2016]征途【动态规划+斜率优化】
  17. 深入理解linux关闭文件和删除文件
  18. R语言实战 —— 常见问题解决方法
  19. 001.Open-Falcon简介
  20. AllJoyn+Android开发案例-android跨设备调用方法

热门文章

  1. HNOI2004宠物收养所(平衡树)
  2. 教你如何将 Sublime 3 打造成 Python/Django IDE开发利器
  3. web请求报出 “超过了最大请求长度” 【注意:重启IIS】
  4. 【转】iOS UITableView的方法解析
  5. 【转】Android 如何在Eclipse中查看Android API源码 及 support包源码
  6. java解析XML四种方法
  7. &lt;转&gt;ERP的测试用例模板
  8. T-SQL 常用语句学习
  9. exists与in的使用与区别
  10. 树莓派I2C连接18B20