微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

AngularJS 指令详细介绍

AngularJS 指令

AngularJS 通过被称为 指令 的新属性来扩展 HTML。

AngularJS 通过内置的指令来为应用添加功能

AngularJS 允许你自定义指令。

AngularJS 指令

AngularJS 指令是扩展的 HTML 属性,带有前缀 ng-。

一个 AngularJS 应用程序。

完整的指令内容可以参阅 AngularJS 参考手册。

AngularJS 实例

rush:js;"> <Meta charset="utf-8">

<div data-ng-app="" data-ng-init="quantity=1;price=5">

价格计算器

数量: <input type="number" ng-model="quantity">
价格: <input type="number" ng-model="price">

总价: {{quantity * price}}

运行结果:

价格计算器

数量:价格:

总价:5

注意:使用 ng-init 不是很常见。您将在控制器一章中学习到一个更好的初始化数据的方式。

重复 HTML 元素

ng-repeat 指令会重复一个 HTML 元素:

AngularJS 实例

rush:js;"> <Meta charset="utf-8">

<div ng-app="" ng-init="names=[
{name:'Jani',country:'norway'},{name:'Hege',country:'Sweden'},{name:'Kai',country:'Denmark'}]">

循环对象:

循环对象:

  • norway

NoteAngularJS 完美支持数据库的 CRUD(增加Create、读取Read、更新Update、删除Delete)应用程序。

把实例中的对象想象成数据库中的记录。

自动引导(自动初始化)应用程序。

稍后您将学习到 ng-app 如何通过一个值(比如 ng-app="myModule")连接到代码模块。

ng-init 指令

ng-init 指令为 AngularJS 应用程序定义了 初始值。

通常情况下,不使用 ng-init。您将使用一个控制器或模块来代替它。

稍后您将学习更多有关控制器和模块的知识。

ng-model 指令

ng-model

指令 绑定 HTML 元素 到应用程序数据。

ng-model

指令也可以:

为应用程序数据提供类型验证(number、email、required)。

为应用程序数据提供状态(invalid、dirty、touched、error)。

为 HTML 元素提供 CSS 类。

绑定 HTML 元素到 HTML 表单。

ng-repeat 指令

ng-repeat 指令对于集合中(数组中)的每个项会 克隆一次 HTML 元素。

创建自定义的指令

除了 AngularJS 内置的指令外,我们还可以创建自定义指令。

你可以使用 .directive 函数添加自定义的指令。

调用自定义指令,HTML 元素上需要添加自定义指令名。

使用驼峰法来命名一个指令, runoobDirective,但在使用它时需要以 - 分割,runoob-directive:

AngularJS 实例

rush:js;"> <Meta charset="utf-8">

运行结果:

自定义指令!

你可以通过以下方式来调用指令:

元素名 属性 类名 注释

以下实例方式也能输出同样结果:

元素名

rush:js;"> <Meta charset="utf-8">

运行结果:

自定义指令!

属性

rush:js;"> <Meta charset="utf-8">

运行结果:

自定义指令!

类名:

rush:js;"> <Meta charset="utf-8">

注意:

你必须设置 restrict 的值为 "C" 才能通过类名来调用指令。

自定义指令!

注意:你必须设置restrict的值为 "C" 才能通过类名来调用指令。

注释:

<div class="jb51code">
<pre class="brush:js;">
<!DOCTYPE html>

<Meta charset="utf-8">

注意:

我们需要在该实例添加

replace

属性, 否则评论是不可见的。

注意:

你必须设置 restrict 的值为 "M" 才能通过注释来调用指令。

运行结果:

自定义指令!

注意:我们需要在该实例添加replace属性, 否则评论是不可见的。

注意:你必须设置restrict的值为 "M" 才能通过注释来调用指令。

限制使用

你可以限制你的指令只能通过特定的方式来调用

实例

通过添加 restrict 属性,并设置只值为 "A",来设置指令只能通过属性的方式来调用:

实例代码

rush:js;"> <Meta charset="utf-8">

注意:

通过设置

restrict

属性值为 "A" 来设置指令只能通过 HTML 元素的属性调用

运行结果:

自定义指令!

注意:通过设置restrict属性值为 "A" 来设置指令只能通过 HTML 元素的属性调用

restrict 值可以是以下几种:

E 只限元素名使用 A 只限属性使用 C 只限类名使用 M 只限注释使用

restrict 认值为 EA,即可以通过元素名和属性名来调用指令。

以上就是对AngularJS 指令 资料整理,后续继续补充

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐