AngularJS基础学习笔记之指令


Posted in Javascript onMay 10, 2015

AngularJS通过指令将HTML属性进行了扩展。

AngularJS指令

AngularJS指令是带有ng-前缀的扩展HTML属性。

ng-app指令用来初始化AngularJS application。

ng-init指令用来初始化application数据。

ng-model指令用来将HTML控件(如input,select,textarea等)的值绑定到application数据。

<div ng-app="" ng-init="firstName='John'">

<p>Name: <input type="text" ng-model="firstName"></p>
<p>You wrote: {{ firstName }}</p>

</div>

ng-app指令同时也告诉AngularJS,它所在的<div>元素是AngularJS application的根元素,即作用域。

数据绑定

在上面的示例中,{{ firstName }}是一个AngularJS数据绑定表达式。

在AngularJS数据绑定中,AngularJS表达式使用AngularJS数据进行同步更新。

{{ firstName }}通过ng-model="firstName"同步更新数据。

<div ng-app="" ng-init="quantity=1;price=5">

Quantity: <input type="number"  ng-model="quantity">
Costs:  <input type="number" ng-model="price">

Total in dollar: {{ quantity * price }}

</div>

Note 使用ng-init指令在AngularJS开发中非常普遍。在控制器一节中你将会看到更好的初始化数据的方法。
重复HTML元素

ng-repeat指令用来重复创建一个HTML元素:

<div ng-app="" ng-init="names=['Jani','Hege','Kai']">
 <ul>
  <li ng-repeat="x in names">
   {{ x }}
  </li>
 </ul>
</div>

在对象数组上使用ng-repeat指令:

<div ng-app="" ng-init="names=[
{name:'Jani',country:'Norway'},
{name:'Hege',country:'Sweden'},
{name:'Kai',country:'Denmark'}]">

<ul>
 <li ng-repeat="x  in names">
  {{ x.name + ', ' + x.country }}
 </li>
</ul>

</div>

Note AngularJS非常适合数据库CRUD(即创建,读取,更新和删除)操作。想象一下,如果这些对象来自于数据库呢?

ng-app指令

ng-app指令定义了AngularJS application的根元素。

当Web页面加载完成后,ng-app指令将auto-bootstrap(自动初始化)application。即自动初始化并引导AngularJS application执行。

在后面的章节中你将会学习到如何给ng-app指令指定一个值(例如ng-app="myModule"),从而与模块联系起来。

ng-init指令

ng-init指令用于为AngularJS application初始化值。

一般情况下不需要使用ng-init指令,而是使用控制器或者模块来进行初始化工作。

在后面的章节中你将会学习到有关控制器和模块的相关内容。

ng-model指令

ng-model指令用来将HTML控件(如input,select,textarea等)的值绑定到application数据。

ng-model指令还可以用来:

提供数据验证(如验证数字,email地址,必填项)。
提供数据的状态(如invalid,dirty,touched,error)。
为HTML元素提供CSS样式类。
将HTML元素绑定到HTML表单。

ng-repeat指令

ng-repeat指令用来为数据集合(或者数组)中的每一个元素生成一个对应的HTML元素。

以上所述就是本文的全部内容了,希望大家能够喜欢。

Javascript 相关文章推荐
Google韩国首页图标动画效果
Aug 26 Javascript
javascript history对象(历史记录)使用方法(实现浏览器前进后退)
Jan 07 Javascript
easyui datagrid 键盘上下控制选中行示例
Mar 31 Javascript
Javascript控制input输入时间格式的方法
Jan 28 Javascript
jquery编写Tab选项卡滚动导航切换特效
Jul 17 Javascript
jQuery实现背景滑动菜单
Dec 02 Javascript
JavaScript模板引擎Template.js使用详解
Dec 15 Javascript
javascript判断元素存在和判断元素存在于实时的dom中的方法
Jan 17 Javascript
Webpack打包css后z-index被重新计算的解决方法
Jun 18 Javascript
微信小程序开发之改变data中数组或对象的某一属性值
Jul 05 Javascript
js实现图片区域可点击大小随意改变(适用移动端)代码实例
Sep 11 Javascript
React 并发功能体验(前端的并发模式)
Jul 01 Javascript
AngularJS基础学习笔记之表达式
May 10 #Javascript
AngularJS基础学习笔记之简单介绍
May 10 #Javascript
JS实现仿QQ聊天窗口抖动特效
May 10 #Javascript
javascript为按钮注册回车事件(设置默认按钮)的方法
May 09 #Javascript
深入浅出分析javaScript中this用法
May 09 #Javascript
深入浅出理解javaScript原型链
May 09 #Javascript
js实现从右向左缓缓浮出网页浮动层广告的方法
May 09 #Javascript
You might like
PHP 地址栏信息的获取代码
2009/01/07 PHP
php date与gmdate的获取日期的区别
2010/02/08 PHP
PHP中如何判断AJAX提交的数据
2012/02/05 PHP
使用php判断网页是否gzip压缩
2013/06/25 PHP
linux下编译安装memcached服务
2014/08/03 PHP
PHP中几个可以提高运行效率的代码写法、技巧分享
2014/08/21 PHP
CentOS下PHP安装Oracle扩展
2015/02/15 PHP
php微信开发之带参数二维码的使用
2016/08/03 PHP
py文件转exe时包含paramiko模块出错解决方法
2016/08/12 PHP
基于php编程规范(详解)
2017/08/17 PHP
Jquery Select操作方法集合脚本之家特别版
2010/05/17 Javascript
javascript+xml实现简单图片轮换(只支持IE)
2012/12/23 Javascript
利用JS来控制键盘的上下左右键(示例代码)
2013/12/14 Javascript
js控制input框只读实现示例
2014/01/20 Javascript
解决node-webkit 不支持html5播放mp4视频的方法
2015/03/11 Javascript
AngularJS基础知识笔记之过滤器
2015/05/10 Javascript
为vue项目自动设置请求状态的配置方法
2019/06/09 Javascript
js getBoundingClientRect使用方法详解
2019/07/17 Javascript
详解ES6中class的实现原理
2020/10/03 Javascript
微信小程序onShareTimeline()实现分享朋友圈
2021/01/07 Javascript
[56:20]LGD vs VP Supermajor 败者组决赛 BO3 第三场 6.10
2018/07/04 DOTA
Python中列表list以及list与数组array的相互转换实现方法
2017/09/22 Python
Win7下Python与Tensorflow-CPU版开发环境的安装与配置过程
2018/01/04 Python
Python实现带参数的用户验证功能装饰器示例
2018/12/14 Python
使用TensorFlow对图像进行随机旋转的实现示例
2020/01/20 Python
Python中openpyxl实现vlookup函数的实例
2020/10/28 Python
详解python3类型注释annotations实用案例
2021/01/20 Python
css3 按钮样式简单可扩展创建
2013/03/18 HTML / CSS
canvas进阶之如何画出平滑的曲线
2018/10/15 HTML / CSS
数控专业毕业生自荐信范文
2014/03/04 职场文书
大学生个人简历自荐信
2015/03/06 职场文书
2016年学校十一国庆节活动总结
2016/04/01 职场文书
小学三年级作文之写景
2019/11/05 职场文书
从结婚开始的恋爱故事。小说《我的美好婚事》TV动画化决定
2022/04/07 日漫
使用 Docker Compose 构建复杂的多容器App
2022/04/30 Servers
Web应用开发TypeScript使用详解
2022/05/25 Javascript