Angularjs基础(九)
AngularJS 应用
应用程序讲解
实例:
<html ng-app="myNoteApp">
<head>
<meat charset="utf-8">
<script src="http://apps.bdimg.com/libs/angular.js/1.4.6angular.min.js"></script>
</head>
<body>
<div ng-controller="myNoteCtrl">
<h2>我的笔记</h2>
<p><textarea ng-model="message" cols="40"rows="10"></textarea></p>
<p>
<button ng-click="sace()">保存</button>
<button ng-click="clear()">清除</button>
</p>
<p>Number of characters left:<span ng-bind="left()"></span></p>
</div>
<script src="myNoteApp.js"></script>
<script src="myNoteCtrl.js"></script>
</body>
</html>
应用程序文件“myNoteCtrl.js”:
var app = angular.module("myNoteApp",[]);
控制器文件“myNoteCtrl.js”
app.controller("myNoteCtrl",function($scope){
$scope.message = "";
$scope.left = function (){ return 100 - $scope.message.length;};
$scope.clear = function() {$scope.message = "";};
$scope.save = function(){alert("Note Saved")}
})
<html> 元素是AngularJS应用:ng-app="myNoteApp"的容器:
<html ng-app="myNoteApp">
<div>是HTML 页面中控制器:ng-controller = "myNoteCtrl"的作用域
<div ng-controller="myNoteCtrl">
ng-model 指令绑定了<textarea>到控制器变量message:
<textarea ng-model="message" cols="40" rows="10"></textarea>
两个ng-click 事件调用了控制器函数clear()和save();
<button ng-click="save()"></button>
<button ng-click="clear()"></button>
ng-bind 指令绑定控制器函数 left() 到<span> ,用于显示剩余字符:
Number of characters left: <span ng-bind="left()"></span>
应用库文件需要在 AngularJs 加载后才能执行:
<script src="myNoteApp.js"></script>
<script src="myNoteCtrl.js"></script>
AngularJS 应用架构
以上实例是一个完整的 AngularJS 单页Web应用(single page web application,SPA)。
<html> 元素包含了 AngularJS 应用 (ng-app=)。
<div> 元素定义了 AngularJS 控制器的作用域 (ng-controller=)。
在一个应用可以由很多控制器。
常用指令
ng-app 定义应用程序的根元素。
实例:让body 元素为AngularJS 应用的根元素:
<body ng-app="">
<p>我的第一个表达式:{{5+5}}</p>
</body>
定义和用法
ng-app 指令用于告诉AngularJS应用和这个元素是根元素。
所有AngularJS 应用都必须要要一个跟元素。
HTML文档中只允许有一个ng-app 指令,如果有多个ng-app指令,则只第一个会被使用。
<element ng-app="modulename">
在 ng-app 根元素上的内容可以包含 AngularJS 代码
</element>
参数值
值: modulename 描述: 可选。指定载应用模块的名称。
实例:
<div ng-app="myApp" ng-controller="myCtrl">
{{firstName +""+ lastName}}
</div>
<script>
var app = angular.module("myApp",[]);
app.controller("myCtrl",function($scope){
$scope.firstName ="John";
$scope.lastName ="Doe";
})
</sctipt>
ng-bind 描述:绑定HTML元素到应用程序数据。
实例:绑定<p>内的innerHTML 到变量myTwxt
<div ng-app="" ng-init="myText='Hello Word!'">
<p ng-bind="myText"></p>
</div>
定义和用法
ng-bind 指令告诉AngularJS 使用给定的变量或表达式的值来替换HTML元素的内容。
如果给定的变量或表达式修改,指定替换的HTML元素也会修改。
语法:
<element ng-bind="expression"></element>
或作为CSS 类:
<element class ="ng-bind:ex[ression"></element>
参数值
值:expression 描述: 指定要执行的变量或表达式。
ng-bind-html 描述:绑定HTML元素的innerHTML 到应用的程序数据,并移除html 字符串中危险字符。
实例:绑定<p>内的innerHTML变量到myText
<script src="http://apps.bdimg.com/libs/angular.js/1.4.6/angular.min.js"></script>
<script src="http://apps.bdimg.com/libs/angular.js/1.5.0-beta.0/angular-sanitize.min.js"></script>
<body>
<div ng-app="myApp" ng-controller="myCtrl">
<p ng-bind-html="myTwxt"></p>
</div>
</body>
<script>
var app=angular.module("myApp",['ngSanitize']);
app.controller("myCtrl",function($scope){
$scope.myText = "My name is: <h1>John Doe</h1>";
})
</script>
定义和用法
ng-bind-html 指令是通过一个安全的方式将内容绑定到HTML元素上。
语法:<element ng-bind-html="expression"></element>
参数值
值:expression 描述:指定要执行的变量或表达式。
ng-bind-template 描述:规定要使用模板替换的文本内容。
实例:<p元素上绑定两个表达式>
<div ng-app="myApp" ng-bind-template="{{firstName}} {{lastName}}" ng-controller="myCtrl"></div>
<script>
var app = angular.module("myApp",[]);
app.controller("myCtrl",function($scope){
$scope.firstName = "John";
$scope.lastName ="Doe";
})
</script>
定义和用法
ng-bind-template 指令用于告诉AngularJS 将绑定表达式的值替换HTML元素的内容。
当你想在HTML元素上绑定多个表达式时可以是使用 ng-bind-template指令。
语法: <element ng-bind-template="expression"></element>
参数值: 值:expression 描述: 一个或多个要执行的表达式,每个使用{{}}包含。
Angularjs基础(九)的更多相关文章
- AngularJS基础入门初探
一.AngularJS简介 1.1 什么是AngularJS (1)一款非常优秀的前端JS框架,可以方便实现MVC/MVVM模式 (2)由Misko Hevery 等人创建,2009年被Google所 ...
- Bootstrap<基础九>辅助类
Bootstrap 中的一些可能会派上用场的辅助类. 文本 以下不同的类展示了不同的文本颜色.如果文本是个链接鼠标移动到文本上会变暗: 类 描述 .text-muted "text-mu ...
- Java语言基础(九)
Java语言基础(九) 一.自增运算(++) 自减运算(--) i++ 就是将i+1再赋给 i i-- 是将i-1再赋给 i 对变量i,j来说,i++ 或++i 这里没什么区别,都是将i的值加1后,再 ...
- {Django基础九之中间件} 一 前戏 二 中间件介绍 三 自定义中间件 四 中间件的执行流程 五 中间件版登陆认证
Django基础九之中间件 本节目录 一 前戏 二 中间件介绍 三 自定义中间件 四 中间件的执行流程 五 中间件版登陆认证 六 xxx 七 xxx 八 xxx 一 前戏 我们在前面的课程中已经学会了 ...
- Java基础九--抽象类
Java基础九--抽象类 一.抽象类介绍 /*抽象类:抽象:笼统,模糊,看不懂!不具体. 特点:1,方法只有声明没有实现时,该方法就是抽象方法,需要被abstract修饰. 抽象方法必须定义在抽象类中 ...
- day 63 Django基础九之中间件
Django基础九之中间件 本节目录 一 前戏 二 中间件介绍 三 自定义中间件 四 中间件的执行流程 五 中间件版登陆认证 六 xxx 七 xxx 八 xxx 一 前戏 我们在前面的课程中已经学 ...
- AngularJs之九(ending......)
今天继续angularJs,但也是最后一篇关于它的了,基础部分差不多也就这些,后续有机会再写它的提升部分. 今天要写的也是一个基础的选择列表: 一:使用ng-options,数组进行循环. <d ...
- AngularJS基础知识1
一.angularJS简介 1.什么是 AngularJS? AngularJS 是一个 JavaScript 框架.它是一个以 JavaScript 编写的库.AngularJS是协助搭建单页面工程 ...
- AngularJS基础概念
作用域.控制器.指令 作用域 应用的作用域是和应用的数据模型相关联的,同时作用域也是表达式执行的上下文.$scope对象是定义应用业务逻辑.控制器方法和视图属性的地方. 作用域是应用状态的基础.基于动 ...
随机推荐
- 邓俊辉数据结构学习-7-BST
二叉搜索树(Binary-Search-Tree)--BST 要求:AVL树是BBST的一个种类,继承自BST,对于AVL树,不做太多掌握要求 四种旋转,旋转是BBST自平衡的基本,变换,主要掌握旋转 ...
- UDP client,UDP server, TCP server, TCP client
UDP server import java.io.IOException; import java.net.DatagramPacket; import java.net.DatagramSocke ...
- 类数组转数组Array.prototype.slice.call(arrayLike)
转换方式:Array.prototype.slice.call(arrayLike) 附:(http://www.jianshu.com/p/f8466e83cef0) 首先Array.prototy ...
- 分享一个好东西(一天精通MongoDB数据库)
https://pan.baidu.com/s/1o7V5e8U 总共几个小时的视频,看了之后醍醐灌顶.分享出来.
- 18_CGLib动态代理
[概述] 已知JDK动态代理中的Proxy.newProxyInstance(ClassLoader loader,Class[] interfaces,InvocationHandler h)方法的 ...
- 《ArcGIS Runtime SDK for Android开发笔记》——数据制作篇:发布具有同步能力的FeatureService服务
1.前言 从ArcGIS 10.2.1开始推出离在线一体化技术之后,数据的离在线一体化编辑一直是大家所关注的一个热点.数据存储在企业级地理数据库中,通过ArcGIS桌面软件加载后配图处理,并发布到Ar ...
- python进程与线程介绍
很多同学都听说过,现代操作系统比如Mac OS X,UNIX,Linux,Windows等,都是支持“多任务”的操作系统. 什么叫“多任务”呢?简单地说,就是操作系统可以同时运行多个任务.打个比方,你 ...
- greenplum维护
1.用户管理 psql -d sea CREATE DATABASE BI; CREATE USER ubi WITH PASSWORD 'pwdbi' NOSUPERUSER; GRANT ALL ...
- Centos7安装JDK1.8 Linux64bit
流程一览: 1.下载JDK1.8(jdk-8u11-linux-x64.tar.gz) 2. 解压缩安装 3.配置JAVA_HOME环境变量 4.切换JDK1.8为当前使用的JDK 5.重启,查看安装 ...
- C/C++ memmove与memcpy的区别及实现
1.与字符串函数strcpy区别: memcpy与memmove都是对内存进行拷贝可以拷贝任何内容,而strcpy仅是对字符串进行操作. memcpy与memmove拷贝多少是通过其第三个参数进行控制 ...