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 相关文章推荐
jquery的$(document).ready()和onload的加载顺序
May 26 Javascript
理解Javascript_08_函数对象
Oct 15 Javascript
一个jquery实现的不错的多行文字图片滚动效果
Sep 28 Javascript
javascript瀑布流布局实现方法详解
Feb 17 Javascript
bootstrap实现每隔5秒自动轮播效果
Dec 20 Javascript
js实现颜色阶梯渐变效果(Gradient算法)
Mar 21 Javascript
js实现移动端轮播图效果
Dec 09 Javascript
vue登录注册及token验证实现代码
Dec 14 Javascript
使用Vue动态生成form表单的实例代码
Apr 26 Javascript
vue2 v-model/v-text 中使用过滤器的方法示例
May 09 Javascript
vue-cli3项目升级到vue-cli4 的方法总结
Mar 19 Javascript
vue 实现动态路由的方法
Jul 06 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
Thinkphp自定义代码生成工具及用法说明(附下载地址)
2016/05/27 PHP
PHP实现的无限分类类库定义与用法示例【基于thinkPHP】
2018/08/06 PHP
JS随即打乱数组实现代码
2012/12/03 Javascript
jQuery Ajax使用实例
2015/04/16 Javascript
JQuery日期插件datepicker的使用方法
2016/03/03 Javascript
JS仿QQ好友列表展开、收缩功能(第二篇)
2017/07/07 Javascript
JavaScript通过mouseover()实现图片变大效果的示例
2017/12/20 Javascript
解决Jquery下拉框数据动态获取的问题
2018/01/25 jQuery
React.js绑定this的5种方法(小结)
2018/06/05 Javascript
详解angular部署到iis出现404解决方案
2018/08/14 Javascript
Vue实现移动端左右滑动效果的方法
2018/11/27 Javascript
layer关闭当前窗口页面以及确认取消按钮的方法
2019/09/09 Javascript
javaScript中indexOf用法技巧
2019/11/26 Javascript
用Python从零实现贝叶斯分类器的机器学习的教程
2015/03/31 Python
Python OpenCV 直方图的计算与显示的方法示例
2018/02/08 Python
Python实现OpenCV的安装与使用示例
2018/03/30 Python
Python利用公共键如何对字典列表进行排序详解
2018/05/19 Python
使用PyQtGraph绘制精美的股票行情K线图的示例代码
2019/03/14 Python
Python Flask框架模板操作实例分析
2019/05/03 Python
python过滤中英文标点符号的实例代码
2019/07/15 Python
python实现局域网内实时通信代码
2019/12/22 Python
keras多显卡训练方式
2020/06/10 Python
导致python中import错误的原因是什么
2020/07/01 Python
python smtplib发送多个email联系人的实现
2020/10/09 Python
python 爬取小说并下载的示例
2020/12/07 Python
诚信考试倡议书
2014/04/15 职场文书
《赶海》教学反思
2014/04/20 职场文书
班级年度安全计划书
2014/05/01 职场文书
纪念九一八爱国演讲稿600字
2014/09/14 职场文书
2014年作风建设工作总结
2014/10/29 职场文书
2014年妇委会工作总结
2014/12/10 职场文书
小学家长通知书评语
2014/12/31 职场文书
2015年学生会部门工作总结
2015/04/21 职场文书
MySQL复制问题的三个参数分析
2021/04/07 MySQL
教你怎么用Python生成九宫格照片
2021/05/20 Python
DSP接收机前端设想
2022/04/05 无线电