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 相关文章推荐
JSON 教程 json入门学习笔记
Sep 22 Javascript
onkeyup,onkeydown和onkeypress的区别介绍
Oct 21 Javascript
用jquery写的菜单从左往右滑动出现
Apr 11 Javascript
详谈javascript中DOM的基本属性
Feb 26 Javascript
js实现的牛顿摆效果
Mar 31 Javascript
简化版手机端照片预览组件
Apr 13 Javascript
浅谈javascript的Touch事件
Sep 27 Javascript
详解vue-Resource(与后端数据交互)
Jan 16 Javascript
Vue中使用ElementUI使用第三方图标库iconfont的示例
Oct 11 Javascript
Vue实现购物车详情页面的方法
Aug 20 Javascript
基于postman获取动态数据过程详解
Sep 08 Javascript
js面向对象方式实现拖拽效果
Mar 03 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
全国FM电台频率大全 - 26 西藏自治区
2020/03/11 无线电
PHP Warning: PHP Startup: Unable to load dynamic library \ D:/php5/ext/php_mysqli.dll\
2012/06/17 PHP
解析php取整的几种方式
2013/06/25 PHP
php获取参数的几种方法总结
2014/02/18 PHP
php通过记录IP来防止表单重复提交方法分析
2014/12/16 PHP
CentOS 上搭建 PHP7 开发测试环境
2017/02/26 PHP
基于jQuery的淡入淡出可自动切换的幻灯插件
2010/08/24 Javascript
jquery实现下拉菜单的二级联动利用json对象从DB取值显示联动
2014/03/27 Javascript
JavaScript获取页面上被选中文字的方法技巧
2015/03/13 Javascript
jQuery超赞的评分插件(8款)
2015/08/20 Javascript
详解JavaScript编程中的数组结构
2015/10/24 Javascript
解决JavaScript数字精度丢失问题的方法
2015/12/03 Javascript
ECMAScript6快速入手攻略
2016/07/18 Javascript
利用node.js爬取指定排名网站的JS引用库详解
2017/07/25 Javascript
vue不通过路由直接获取url中参数的方法示例
2017/08/24 Javascript
性能优化篇之Webpack构建速度优化的建议
2019/04/03 Javascript
JavaScript canvas动画实现时钟效果
2020/02/10 Javascript
vue实现简单全选和反选功能
2020/09/15 Javascript
Vue实现boradcast和dispatch的示例
2020/11/13 Javascript
[03:21]辉夜杯主赛事 12月25日TOP5
2015/12/26 DOTA
Python的ORM框架SQLAlchemy入门教程
2014/04/28 Python
Django查找网站项目根目录和对正则表达式的支持
2015/07/15 Python
深入浅析Python传值与传址
2018/07/10 Python
Python基础之函数的定义与使用示例
2019/03/23 Python
利用python numpy+matplotlib绘制股票k线图的方法
2019/06/26 Python
Python 实现判断图片格式并转换,将转换的图像存到生成的文件夹中
2020/01/13 Python
Python socket处理client连接过程解析
2020/03/18 Python
Python字符串函数strip()原理及用法详解
2020/07/23 Python
Python实现LR1文法的完整实例代码
2020/10/25 Python
Python就将所有的英文单词首字母变成大写
2021/02/12 Python
介绍一下代理模式(Proxy)
2014/10/17 面试题
教师优秀党员事迹材料
2014/08/14 职场文书
行政工作试用期自我评价
2014/09/14 职场文书
优秀教师推荐材料
2014/12/16 职场文书
2019秋季运动会口号
2019/06/25 职场文书
Python 统计序列中元素的出现频度
2022/04/26 Python