AngularJS基础教程之简单介绍


Posted in Javascript onSeptember 27, 2015

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

AngularJS通过指令对HTML属性进行了扩展,然后通过表达式将数据绑定到HTML元素中。

AngularJS是一个JavaScript框架

AngularJS是一个JavaScript框架,它是由JavaScript语言编写的类库。

AngularJS以JavaScript文件的形式进行发布,我们可以通过script标记将它添加到web页面中:

<script src="http://cdn.bootcss.com/angular.js/1.3.14/angular.min.js"></script>

AngularJS扩展了HTML

AngularJS通过一系列ng-directives指令对HTML进行扩展。

ng-app指令定义了AngularJS application。

ng-model指令将HTML控件的值与数据模型绑定到一起。

ng-bind指令将模型数据绑定到HTML视图。

<script src="http://cdn.bootcss.com/angular.js/1.3.14/angular.js"></script>
<body>
<div ng-app="">
   <p>Name: <input type="text" ng-model="name"></p>
   <p ng-bind="name"></p>
</div>
</body>

示例说明:

当页面加载完成时AngularJS自动开始执行。

ng-app指令告诉AngularJS它所在的<div>元素是AngularJS Application的根元素。

ng-model指令将input标签的值绑定给变量name。

ng-bind指令将变量name的值绑定给<p>元素的innerHTML属性。

 AngularJS指令

就如你所看到的,AngularJS指令就是一组以ng开头的HTML属性。

通过ng-init指令可以将AngularJS Application的变量进行初始化。

<div ng-app="" ng-init="firstName='John'">
<p>The name is <span ng-bind="firstName"></span></p>
</div>

等效的代码:

<div data-ng-app="" data-ng-init="firstName='John'">
<p>The name is <span data-ng-bind="firstName"></span></p>
</div>

Note 你可以使用前缀data-ng-来代替ng-,这样可以确保页面上的HTML是有效的(valid)。

在后面的章节中你将会学习到更多的AngularJS指令。

AngularJS表达式

AngularJS表达式写在双大括号中:{{ 表达式语句 }}。

AngularJS会准确地将表达式“输出”为计算的结果,例如:

<!DOCTYPE html>
<html>
<script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.3.14/angular.min.js"></script>
<body>

<div ng-app="">
   <p>My first expression: {{ 5 + 5 }}</p>
</div>

</body>
</html>

AngularJS表达式绑定数据到HTML的方式与ng-bind指令的方式相同。

<!DOCTYPE html>
<html>
<script src="angular.min.js"></script>
<body>

<div ng-app="">
 <p>Name: <input type="text" ng-model="name"></p>
 <p>{{name}}</p>
</div>

</body>
</html>

在后面的章节中你将会学习到更多有关AngularJS表达式的内容。

AngularJS Application

AngularJS模块定义了AngularJS Applications。

AngularJS控制器则控制着AngularJS Applications的行为。

ng-app指令用于指定application,而ng-controller指令则用来指定控制器。

<div ng-app="myApp" ng-controller="myCtrl">

First Name: <input type="text" ng-model="firstName"><br>
Last Name: <input type="text" ng-model="lastName"><br>
<br>
Full Name: {{firstName + " " + lastName}}

</div>

<script>
var app = angular.module('myApp', []);
app.controller('myCtrl', function($scope) {
  $scope.firstName= "John";
  $scope.lastName= "Doe";
});
</script>

AngularJS模块定义applications:

var app = angular.module('myApp', []);
AngularJS控制器控制AngularJS Applications的行为:

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

在后面的章节中你将会学习到更多有关模块和控制器的内容。

Javascript 相关文章推荐
js数组Array sort方法使用深入分析
Feb 21 Javascript
JQuery中如何传递参数如click(),change()等具体实现
Apr 28 Javascript
使用js声明数组,对象在jsp页面中(获得ajax得到json数据)
Nov 05 Javascript
深入解析JavaScript编程中的this关键字使用
Nov 09 Javascript
简单三步实现报表页面集成天气
Dec 15 Javascript
浅谈Angular路由复用策略
Oct 04 Javascript
微信小程序异步处理详解
Nov 10 Javascript
webpack打包node.js后端项目的方法
Mar 10 Javascript
vue-video-player 通过自定义按钮组件实现全屏切换效果【推荐】
Aug 29 Javascript
微信二次分享报错invalid signature问题及解决方法
Apr 01 Javascript
vue.js的状态管理vuex中store的使用详解
Nov 08 Javascript
解决vue中的无限循环问题
Jul 27 Javascript
JS将滑动门改为选项卡(需鼠标点击)的实现方法
Sep 27 #Javascript
浅谈javascript的Touch事件
Sep 27 #Javascript
Labelauty?jQuery单选框/复选框美化插件分享
Sep 26 #Javascript
浅谈Javascript中Object与Function对象
Sep 26 #Javascript
基于jQuery仿淘宝产品图片放大镜代码分享
Jun 23 #Javascript
深入分析jsonp协议原理
Sep 26 #Javascript
如何用jQuery实现ASP.NET GridView折叠伸展效果
Sep 26 #Javascript
You might like
为什么那些咖啡爱好者大多看不上连锁咖啡店?
2021/03/06 咖啡文化
判“新”函数:得到今天与明天的秒数
2006/10/09 PHP
PHP与MySQL开发中页面出现乱码的一种解决方法
2007/07/29 PHP
php 进度条实现代码
2009/03/10 PHP
PHP中foreach()用法汇总
2015/07/02 PHP
PHP中使用GD库绘制折线图 折线统计图的绘制方法
2015/11/09 PHP
PHP实现QQ登录的开原理和实现过程
2018/02/04 PHP
ppk谈JavaScript style属性
2008/10/10 Javascript
js鼠标左右键 键盘值小结
2010/06/11 Javascript
小试JQuery的AutoComplete插件
2011/05/04 Javascript
javascript学习笔记(二十) 获得和设置元素的特性(属性)
2012/06/20 Javascript
jQuery实现当按下回车键时绑定点击事件
2014/01/28 Javascript
JS实现很酷的EMAIL地址添加功能实例
2015/02/28 Javascript
javascript跨域的方法汇总
2015/10/23 Javascript
mui开发中获取单选按钮、复选框的值(实例讲解)
2017/07/24 Javascript
微信小程序使用Socket的实例
2017/09/19 Javascript
JS实现的缓冲运动效果示例
2018/04/30 Javascript
vue 实现websocket发送消息并实时接收消息
2019/12/09 Javascript
15分钟学会vue项目改造成SSR(小白教程)
2019/12/17 Javascript
[01:59]深扒TI7聊天轮盘语音出处 1
2017/05/11 DOTA
Python中用PIL库批量给图片加上序号的教程
2015/05/06 Python
Python 中的range(),以及列表切片方法
2018/07/02 Python
mvc框架打造笔记之wsgi协议的优缺点以及接口实现
2018/08/01 Python
python 实现A*算法的示例代码
2018/08/13 Python
Python 学习教程之networkx
2019/04/15 Python
python实现在函数图像上添加文字和标注的方法
2019/07/08 Python
Python创建临时文件和文件夹
2020/08/05 Python
HTML5 device access 设备访问详解
2018/05/24 HTML / CSS
德国大型的家具商店:Pharao24.de
2016/10/02 全球购物
怎样自定义一个异常类
2016/09/27 面试题
毕业生自荐书
2014/02/02 职场文书
2014小学语文教学工作总结
2014/12/17 职场文书
2015年员工工作总结范文
2015/04/08 职场文书
初中历史教学反思
2016/02/19 职场文书
Java 超详细讲解ThreadLocal类的使用
2022/04/07 Java/Android
Elasticsearch6.2服务器升配后的bug(避坑指南)
2022/09/23 Servers