AngularJS~大话开篇
2024-09-15 12:35:43
AngularJS是一款优秀的前端JS框架,已经被用于Google的多款产品当中。AngularJS有着诸多特性,最为核心的是:MVVM、模块化、自动化双向数据绑定、语义化标签、依赖注入、等等。
前端一些术语
类库 - 类库是一些函数的集合,它能帮助你写WEB应用。起主导作用的是你的代码,由你来决定何时使用类库。类库有:jQuery,YUI,Protype等
框架 - 框架是一种特殊的、已经实现了的WEB应用,你只需要对它填充具体的业务逻辑。这里框架是起主导作用的,由它来根据具体的应用逻辑来调用你的代码。框架有:knockout、sproutcore等。
AngularJS的一些技术特点
- 使用双大括号{{}}语法进行数据绑定;
- 使用DOM控制结构来实现迭代或者隐藏DOM片段;
- 支持表单和表单的验证;
- 能将逻辑代码关联到相关的DOM元素上;
- 能将HTML分组成可重用的组件
- 双向绑定(html影响代码,代码也影响html)
- 路由功能(单页面实现类似多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:变量绑定到指定标签
下一讲,我们将开始测试具体的实例……
最新文章
- 三星首次更新Gear VR虚拟现实浏览器Samsung Internet
- PHP实例开发(3)PHP中MVC学习之ThinkPHP
- aa5
- 神马是 NaN,它的类型是神马?怎么测试一个值是否等于 NaN?
- 基于MVC4+EasyUI的Web开发框架经验总结(15)--在MVC项目中使用RDLC报表
- smarty基本语法
- su成别的用户后仍以原来私钥访问远程机器
- java阿拉伯数字表示的金额转换成中文大写金额
- SWF Web播放器
- CentOS 6.5安装MySQL中文乱码问题解决
- onmouse事件
- Bootstrap3 概述
- Docke--Dockerfile实践
- JVM垃圾回收机制之对象回收算法
- Thread(生产者和消费者) wait、notify、notifyAll
- [luogu4072][bzoj4518][SDOI2016]征途【动态规划+斜率优化】
- 深入理解linux关闭文件和删除文件
- R语言实战 —— 常见问题解决方法
- 001.Open-Falcon简介
- AllJoyn+Android开发案例-android跨设备调用方法