AngularJs——简介,表达式,指令

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了AngularJs——简介,表达式,指令相关的知识,希望对你有一定的参考价值。

AngularJs简介

AngularJs是一个javascript框架,它可通过<script>标签添加到html页面,它是一个以JavaScript编写的库。

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

AngularJs扩展了HTML

AngularJs通过ng-directives扩展了HTML。

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

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

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

实例:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<script src="http://apps.bdimg.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。

什么是AngularJs?

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

AngularJs把应用程序数据绑定到HTML元素。

AngularJs可以克隆和重复HTML元素。

AngularJs可以隐藏和显示HTML元素。

AngularJs可以在HTML元素"背后"添加代码。

AngularJs支持输入验证。

AngularJs表达式

AngularJs表达式写在双大括号内:{{expression}}.

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

AngularJs将在表达式书写的位置“输出”数据。

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

实例:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<script src="http://apps.bdimg.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 数字就像 JavaScript 数字:

<div ng-app="" ng-init="quantity=1;cost=5">
<p>总价: {{ quantity * cost }}</p>
</div>

使用 ng-bind 的相同实例:

<div ng-app="" ng-init="quantity=1;cost=5">
<p>总价: <span ng-bind="quantity * cost"></span></p>
</div>

AngularJs字符串

实例:

AngularJS 数字就像 JavaScript 数字:

<div ng-app="" ng-init="firstName=‘John‘;lastName=‘Doe‘">
<p>姓名: {{ firstName + " " + lastName }}</p>
</div>

使用 ng-bind 的相同实例:

<div ng-app="" ng-init="firstName=‘John‘;lastName=‘Doe‘">
<p>姓名: <span ng-bind="firstName + ‘ ‘ + lastName"></span></p>
</div>

AngularJs对象

AngularJS 对象就像 JavaScript 对象:

<div ng-app="" ng-init="person={firstName:‘John‘,lastName:‘Doe‘}">
<p>姓为 {{ person.lastName }}</p>
</div>

使用 ng-bind 的相同实例:

<div ng-app="" ng-init="person={firstName:‘John‘,lastName:‘Doe‘}">
<p>姓为 <span ng-bind="person.lastName"></span></p>
</div>

AngularJs数组

AngularJS 数组就像 JavaScript 数组:

<div ng-app="" ng-init="points=[1,15,19,2,40]">
<p>第三个值为 {{ points[2] }}</p>
</div>

使用 ng-bind 的相同实例:

<div ng-app="" ng-init="points=[1,15,19,2,40]">
<p>第三个值为 <span ng-bind="points[2]"></span></p>
</div>

 

AngularJS 表达式 与 JavaScript 表达式

 

类似于 JavaScript 表达式,AngularJS 表达式可以包含字母,操作符,变量。

 

与 JavaScript 表达式不同,AngularJS 表达式可以写在 HTML 中。

 

与 JavaScript 表达式不同,AngularJS 表达式不支持条件判断,循环及异常。

 

与 JavaScript 表达式不同,AngularJS 表达式支持过滤器

 

AngularJs应用

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

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

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

实例:

<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模块

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

AngularJs控制器

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

 

AngularJs指令

 

AngularJs指令是以ng作为前缀的HTML属性。ng-init指令初始化AngularJs应用程序变量。

 

实例:

 

<div ng-app="" ng-init="firstName=‘John‘">
<p>姓名为 <span ng-bind="firstName"></span></p>
</div3>I::II

 

以上是关于AngularJs——简介,表达式,指令的主要内容,如果未能解决你的问题,请参考以下文章

AngularJS数据双向绑定

[angularjs] angularjs系列笔记简介

AngularJs简介

初识AngularJS

浅谈AngularJs优缺点(另附AngularJs视频教程)

AngularJS基础