Angular JS - 6 - Angular JS 常用指令
<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title></title>
</head>
<!--
1. Angular指令
* Angular为HTML页面扩展的: 自定义标签属性或标签
* 与Angular的作用域对象(scope)交互,扩展页面的动态表现力
2. 常用指令(一)
* ng-app: 指定模块名,angular管理的区域
* ng-model: 双向绑定,输入相关标签
* ng-init: 初始化数据
* ng-click: 调用作用域对象的方法(点击时)
* ng-controller: 指定控制器构造函数名,内部会自动创建一个新的子作用域(外部的)
* ng-bind: 解决使用{{}}显示数据闪屏(在很短时间内显示{{}})
* ng-repeat: 遍历数组显示数据, 数组有几个元素就会产生几个新的作用域
* $index, $first, $last, $middle, $odd, $even
* ng-show: 布尔类型, 如果为true才显示
* ng-hide: 布尔类型, 如果为true就隐藏
--> <body ng-app="myApp">
<!--创建作用域对象MyCtrl -->
<div ng-controller="MyCtrl" ng-init="age=12">
<div>
<h2>价格计算器(自动)</h2>
数量:<input type="number" ng-model="count1">
价格:<input type="number" ng-model="price1">
<p>总计:{{count1 * price1}}</p>
</div> <div>
<h2>价格计算器(点击按钮显示计算结果)</h2>
数量:<input type="number" ng-model="count2">
价格:<input type="number" ng-model="price2">
<button ng-click="getTotalPrice()">计算</button>
<p>总计:{{totalPrice}}</p>
</div> <!--
* ng-repeat: 遍历数组显示数据, 数组有几个元素就会产生几个新的作用域
* $index 下标,从0开始, $first, $last, $middle除了收尾,其他属于middle, $odd, $even
-->
<h3>人员信息列表</h3>
<ul>
<!--ng-repeat="person in persons" person是循环变量,接收每次循环时得到的一个person对象-->
<li ng-repeat="person in persons">
偶数行:{{$even}},奇数行{{$odd}},中间的:{{$middle}},最后一个:{{$last}},第一个:{{$first}},第{{$index +
1}}个,{{person.name}}----{{person.age}}
</li>
</ul> <!--ng-bind: 解决使用{{}}显示数据闪屏(在很短时间内显示{{}}) -->
<!--当使用ng-bind的时候表达式不在生效-->
<p ng-bind="123">:{{'asdfdsfds'}}</p>
<p>{{count2}}</p>
<!--ng-show: 布尔类型, 如果为true才显示; ng-hide: 布尔类型, 如果为true就隐藏 -->
<button ng-click="switch()">切换</button>
<p ng-show="isLike">我喜欢贾静雯-isLike(ng-show)值为:{{isLike}}</p>
<p ng-hide="isLike">贾静雯喜欢我-isLike(ng-show)值为:{{isLike}}</p> </div>
<script type='text/javascript' src='../../js/angular-1.5.5/angular.js'></script>
<script type='text/javascript'>
/*
* * ng-app: 指定模块名,angular管理的区域
* ng-model: 双向绑定,输入相关标签
* ng-init: 初始化数据
* ng-click: 调用作用域对象的方法(点击时)
* ng-controller: 指定控制器构造函数名,内部会自动创建一个新的子作用域(外部的)
* */
//创建模块对象
angular.module('myApp', [])
.controller('MyCtrl', ['$scope', function ($scope) { $scope.count1 = 1;
$scope.price1 = 20;
$scope.count2 = 2;
$scope.price2 = 30;
$scope.totalPrice = $scope.count2 * $scope.price2; //页面初始化时要显示的值
$scope.getTotalPrice = function () {
$scope.totalPrice = this.count2 * this.price2; //更改后计算新值
}; $scope.persons = [
{name: 'kobe', age: 39},
{name: 'anverson', age: 41},
{name: 'weide', age: 38},
{name: 'tim', age: 40},
{name: 'curry', age: 29} ];
$scope.isLike = true;
$scope.switch = function () {
$scope.isLike = !$scope.isLike;
}
}])
</script> </body>
</html>
Angular JS - 6 - Angular JS 常用指令的更多相关文章
- Vue专题-js常用指令
vue.js官方给自己的定为是数据模板引擎,并给出了一套渲染数据的指令.本文详细介绍了vue.js的常用指令. vue.js常用指令 Vue.js使用方式及文本插值 Vue.js 使用了基于 HTML ...
- Angular JS从入门基础 mvc三层架构 常用指令
Angular JS从入门基础 mvc模型 常用指令 ★ 最近一直在复习AngularJS,它是一款优秀的前端JS框架,已经被用于Google的多款产品当中.AngularJS有着诸多特性,最为核心 ...
- Angular JS - 7 - Angular JS 常用指令2
<!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...
- vue.js介绍,常用指令,事件,以及制作简易留言版
一.vue是什么? 一个mvvm框架(库).和angular类似,比较容易上手.小巧,让我们的代码更加专注于业务逻辑,而不是去关注DOM操作 二.vue和angular之间的区别 vue--简单易学 ...
- 1.Vue.js的常用指令
Vue.js介绍 Vue.js是当下很火的一个JavaScript MVVM库,它是以数据驱动和组件化的思想构建的.相比于Angular.js,Vue.js提供了更加简洁.更易于理解的API,使得 ...
- Vue.js入门及其常用指令
一.Vue框架 https://cn.vuejs.org/ 官网 前端领域有三大框架 Angular诞生于2009年,是由谷歌公司创建出来的框架: React诞生于2013年,是由facebook公司 ...
- MVC、MVP、MVVM、Angular.js、Knockout.js、Backbone.js、React.js、Ember.js、Avalon.js、Vue.js 概念摘录
注:文章内容都是摘录性文字,自己阅读的一些笔记,方便日后查看. MVC MVC(Model-View-Controller),M 是指业务模型,V 是指用户界面,C 则是控制器,使用 MVC 的目的是 ...
- 青出于蓝而胜于蓝 — Vue.js对Angular.js的那些进步
Angular.js与Vue.js是非常有渊源的两款前端框架,据Vue.js的官方网站描述,在其早期开发时,灵感来源就是Angular.js.而在很多方面,Vue.js也正像是中国的那句古话,&quo ...
- 【转】Angular.js VS. Ember.js:谁将成为Web开发的新宠?
本文源自于Quora网站的一个问题,作者称最近一直在为一个新的Rails项目寻找一个JavaScript框架,通过筛选,最终纠结于 Angular.js和 Ember.js. 这个问题获得了大量的关注 ...
随机推荐
- php面试专题---15、MySQL数据库基础考察点
php面试专题---15.MySQL数据库基础考察点 一.总结 一句话总结: 注意:只写精品 1.mysql定义int(3),那么我存1234就错了么? 不是:无影响:只会影响显示字符的个数:可以为整 ...
- face_recognition开源人脸识别库:离线识别率高达99.38%
基于Python的开源人脸识别库:离线识别率高达99.38%——新开源的用了一下感受一下 原创 2017年07月28日 21:25:28 标签: 人脸识别 / 人脸自动定位 / 人脸识别开源库 / f ...
- 不用print调试 xdebug ubuntu phpstorm 远程断点调试
即使这会写php也遵守zebra大人的指示:不用print调试!!!!----环境ok ---gan !!! w http://blog.csdn.net/ty_hf/article/details ...
- Unity shader with lightmap
小记一下用法与问题,时更 surface shader就不用操心了,自带lightmap计算 主要是vertex fragment shader部分 Unity5 bake light map有三种情 ...
- Android深度探索-卷1第七章心得体会
创建LED驱动的设备文件 第一步:使用cdev_init函数初始化cdev 第二步:指定设备号.直接在代码指定或动态分配 第三步:使用cdev_add函数将字符设备添加到内核中的字符设备数组中 第四步 ...
- python中函数的嵌套和作用域链
1.三元运算if条件成立的结果 if 条件 else 条件不成立的结果例如: a=20 b=10 c=a if a>b else b print(c) 2.命名空间 全局命名空间:创建的存储“变 ...
- HashSet -无序,不重复集合
package cn.learn.collection.Set; import java.util.Objects; public class IsPerson { private int age; ...
- hive 排序
1.全局排序(order by) Order by:全局排序,只有一个reducer ASC(ascend):升序(默认) DESC(descend):降序 2.每个MR内部排序(sort by) s ...
- 厉害了,Google大神每天写多少行代码?
文章转自开源中国社区,编译自:Quora Quora上有个有趣的问题:Google工程师们每天写多少行代码? Google 的 AdMob 全栈工程师 Raymond Farias 在 Quora 发 ...
- mysql DATETIME和TIMESTAMP类型
以mysql 5.7.20 为例 一直以来,理解有偏差,作此记录,纠正 一.DATETIME和TIMESTAMP 都有高达微秒(6位)的精度 范围 DATETIME 1000-01-01 00: ...