AngularJS 教程及实例代码


Posted in Javascript onOctober 23, 2017

angularjs 简介

AngularJS 是一个 JavaScript 框架。它可通过 <script> 标签添加到 HTML 页面。

AngularJS 通过 指令 扩展了 HTML,且通过 表达式 绑定数据到 HTML。

AngularJS 是一个 JavaScript 框架

AngularJS 是一个 JavaScript 框架。它是一个以 JavaScript 编写的库。

AngularJS 是以一个 JavaScript 文件形式发布的,可通过 script 标签添加到网页中:

<script src="http://cdn.static.runoob.com/libs/angular.js/1.4.6/angular.min.js"></script>

Note 我们建议把脚本放在 <body> 元素的底部。

这会提高网页加载速度,因为 HTML 加载不受制于脚本加载。

各个 angular.js 版本下载: https://github.com/angular/angular.js/releases

AngularJS 扩展了 HTML

AngularJS 通过 ng-directives 扩展了 HTML。

ng-app 指令定义一个 AngularJS 应用程序。

ng-model 指令把元素值(比如输入域的值)绑定到应用程序。

ng-bind 指令把应用程序数据绑定到 HTML 视图。

AngularJS 实例

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<script src="http://cdn.static.runoob.com/libs/angular.js/1.4.6/angular.min.js"></script>
</head>
<body> 
<div ng-app="">
  <p>名字 : <input type="text" ng-model="name"></p>
  <h1>Hello {{name}}</h1>
</div>
</body>
</html>

实例讲解:

当网页加载完毕,AngularJS 自动开启。

ng-app 指令告诉 AngularJS,<div> 元素是 AngularJS 应用程序 的"所有者"。

ng-model 指令把输入域的值绑定到应用程序变量 name。

ng-bind 指令把应用程序变量 name 绑定到某个段落的 innerHTML。

Note 如果您移除了 ng-app 指令,HTML 将直接把表达式显示出来,不会去计算表达式的结果。

什么是 AngularJS?

AngularJS 使得开发现代的单一页面应用程序(SPAs:Single Page Applications)变得更加容易。

  • AngularJS 把应用程序数据绑定到 HTML 元素。
  • AngularJS 可以克隆和重复 HTML 元素。
  • AngularJS 可以隐藏和显示 HTML 元素。
  • AngularJS 可以在 HTML 元素"背后"添加代码。
  • AngularJS 支持输入验证。

AngularJS 指令

正如您所看到的,AngularJS 指令是以 ng 作为前缀的 HTML 属性。

ng-init 指令初始化 AngularJS 应用程序变量。

AngularJS 实例

<div ng-app="" ng-init="firstName='John'">
<p>姓名为 <span ng-bind="firstName"></span></p>
</div>

Note HTML5 允许扩展的(自制的)属性,以 data- 开头。

AngularJS 属性以 ng- 开头,但是您可以使用 data-ng- 来让网页对 HTML5 有效。

带有有效的 HTML5:

AngularJS 实例

<div data-ng-app="" data-ng-init="firstName='John'">
<p>姓名为 <span data-ng-bind="firstName"></span></p>
</div>

AngularJS 表达式

AngularJS 表达式写在双大括号内:{{ expression }}。

AngularJS 表达式把数据绑定到 HTML,这与 ng-bind 指令有异曲同工之妙。

AngularJS 将在表达式书写的位置"输出"数据。

AngularJS 表达式 很像 JavaScript 表达式:它们可以包含文字、运算符和变量。

实例 {{ 5 + 5 }} 或 {{ firstName + " " + lastName }}

AngularJS 实例

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<script src="http://cdn.static.runoob.com/libs/angular.js/1.4.6/angular.min.js"></script> 
</head>
<body>
<div ng-app="">
  <p>我的第一个表达式: {{ 5 + 5 }}</p>
</div>
</body>
</html>

AngularJS 应用

AngularJS 模块(Module) 定义了 AngularJS 应用。

AngularJS 控制器(Controller) 用于控制 AngularJS 应用。

ng-app指令定义了应用, ng-controller 定义了控制器。

AngularJS 实例

<div ng-app="myApp" ng-controller="myCtrl">
名: <input type="text" ng-model="firstName"><br>
姓: <input type="text" ng-model="lastName"><br>
<br>
姓名: {{firstName + " " + lastName}}
</div>
<script>
var app = angular.module('myApp', []);
app.controller('myCtrl', function($scope) {
 $scope.firstName= "John";
 $scope.lastName= "Doe";
});
</script>

AngularJS 模块定义应用:

AngularJS 模块

var app = angular.module('myApp', []);

AngularJS 控制器控制应用:

AngularJS 控制器

app.controller('myCtrl', function($scope) {
 $scope.firstName= "John";
 $scope.lastName= "Doe";
});

总结

以上所述是小编给大家介绍的AngularJS 简介及实例代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
javascript时间函数大全
Jun 30 Javascript
jquery禁止回车触发表单提交
Dec 12 Javascript
node.js中使用socket.io制作命名空间
Dec 15 Javascript
嵌入式iframe子页面与父页面js通信的方法
Jan 20 Javascript
jQuery实现在HTML文档加载完毕后自动执行某个事件的方法
May 08 jQuery
node.js调用Chrome浏览器打开链接地址的方法
May 17 Javascript
node使用UEditor富文本编辑器的方法实例
Jul 11 Javascript
Vue中封装input组件的实例详解
Oct 17 Javascript
JavaScript判断变量名是否存在数组中的实例
Dec 28 Javascript
微信小程序表单弹窗实例
Jul 19 Javascript
JS实现二维数组元素的排列组合运算简单示例
Jan 28 Javascript
解决vue单页面应用进入页面加载所有 js 的问题
Aug 12 Javascript
浅谈Koa服务限流方法实践
Oct 23 #Javascript
浅谈vue中使用图片懒加载vue-lazyload插件详细指南
Oct 23 #Javascript
angularjs实现猜大小功能
Oct 23 #Javascript
详解在vue-cli项目中使用mockjs(请求数据删除数据)
Oct 23 #Javascript
angularjs实现天气预报功能
Jun 16 #Javascript
angular.js实现购物车功能
Oct 23 #Javascript
使用store来优化React组件的方法
Oct 23 #Javascript
You might like
一步一步学习PHP(4) php 函数 补充2
2010/02/15 PHP
PHP转换文件夹下所有文件编码的实现代码
2013/06/06 PHP
浅析php数据类型转换
2014/01/09 PHP
支持中文的PHP按字符串长度分割成数组代码
2015/05/17 PHP
thinkphp分页集成实例
2017/07/24 PHP
JavaScript在IE和Firefox(火狐)的不兼容问题解决方法小结
2010/04/13 Javascript
判断目标是否是window,document,和拥有tagName的Element的代码
2010/05/31 Javascript
如何判断元素是否为HTMLElement元素
2013/12/06 Javascript
js锁屏解屏通过对$.ajax进行封装实现
2014/07/31 Javascript
基于jQuery通过jQuery.form.js插件使用ajax提交form表单
2015/08/17 Javascript
利用vue + element实现表格分页和前端搜索的方法
2017/12/25 Javascript
VUE 全局变量的几种实现方式
2018/08/22 Javascript
深入理解Vue keep-alive及实践总结
2019/08/21 Javascript
详解elementui之el-image-viewer(图片查看器)
2019/08/30 Javascript
零基础写python爬虫之抓取糗事百科代码分享
2014/11/06 Python
django 通过ajax完成邮箱用户注册、激活账号的方法
2018/04/17 Python
win10 64bit下python NLTK安装教程
2018/09/19 Python
python自动化测试之如何解析excel文件
2019/06/27 Python
通过Turtle库在Python中绘制一个鼠年福鼠
2020/02/03 Python
Python生成器传参数及返回值原理解析
2020/07/22 Python
套娃式文件夹如何通过Python批量处理
2020/08/23 Python
python连接mysql数据库并读取数据的实现
2020/09/25 Python
Django正则URL匹配实现流程解析
2020/11/13 Python
Corelle官方网站:购买康宁餐具
2016/11/02 全球购物
澳大利亚当地社区首选的光学商店:1001 Optical
2019/08/24 全球购物
宝信软件JAVA工程师面试经历
2012/08/19 面试题
Ruby如何实现动态方法调用
2012/11/18 面试题
趣味体育活动方案
2014/02/08 职场文书
小学清明节活动总结
2014/07/04 职场文书
法院干警四风问题自我剖析材料
2014/09/29 职场文书
2014年医药代表工作总结
2014/11/22 职场文书
逃课检讨书怎么写
2015/01/01 职场文书
留学推荐信怎么写
2015/03/26 职场文书
大学体育课感想
2015/08/10 职场文书
2016年度优秀辅导员事迹材料
2016/02/26 职场文书
Windows10安装Apache2.4的方法步骤
2022/06/25 Servers