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. 这个问题获得了大量的关注 ...
随机推荐
- 移动端rem布局屏幕适配插件(放js中便可使用)
/* doc:不用管:document对象 win:不用管:window对象 design:注意:设计稿的尺寸/物理像素*/ (function (doc, win,design) {// alert ...
- Linux之虚拟机里的REHL7的IP
RHEL7最小化安装之后(桥接模式),我们查看本机IP, ip addr ifconfig 我们要修改配置文件 找到目录 找到文件,用vi编辑器打开修改配置文件 保存退出后,需要重启网络服务 只有我们 ...
- day23—JavaScript实现DIV盒子拖拽(原生方式)
转行学开发,代码100天——2018-04-08 <!doctype html> <html> <head> <meta charset="utf- ...
- spring cloud网关gateway
spring gateway使用基于netty异步io,第二代网关:zuul 1使用servlet 3,第一代网关,每个请求一个线程,同步Servlet,多线程阻塞模型.而spring貌似不想在支持z ...
- 安卓中java和js如何交互
1.安卓中java和js如何交互 在Android上怎样实现JAVA和JS交互呢?Android的webview是基于webkit内核的,webview中集成了js与java互调的接口函数,通过add ...
- Cross-entropy Cost Function for Classification Problem
在Machine Learning的Regression Problem中,常用Quadratic Function来做Cost Function,用以表征Hypothesis与Y之间的差距.而通过G ...
- EasyUI的columns中列标题居中
$("#supDataList").datagrid({ url: "../Ajax/SupplierAjax.ashx", queryParams: ...
- Python入门习题8.羊车门问题
例8. 羊车门问题描述:有3扇关闭的门,一扇后停着汽车,另外两扇门后是山羊,主持人知道每扇门后是什么.参赛者首先选择一扇门.在开启它之前,主持人会从另外两扇门中打开一扇门,露出门后的山羊.此时,允许参 ...
- python爬取企业登记业务
import requests from lxml import etree import csv for i in range(10, 990, 10): url = "http://12 ...
- FZU 2187 回家种地 ( 扫描线 + 离散 求矩阵单次覆盖面积 )
2187 回家种地 Accept: 56 Submit: 230Time Limit: 1000 mSec Memory Limit : 32768 KB Problem Descript ...