Angular.JS中的指令是什么

时间:2013-02-02 14:14:07

标签: angularjs

我很难理解AngularJS中的指令。 AngularJS自己的定义充其量令人困惑:

Directives are a way to teach HTML new tricks. During DOM compilation directives are matched against the HTML and executed. This allows directives to register behavior, or transform the DOM.

有人可以用简单的英语解释AngularJS中的指令,这些指令通常用于教学编程。类似于:directives are funcions/objects that extends ...

2 个答案:

答案 0 :(得分:9)

它们是一种扩展HTML,添加新元素和/或向现有元素添加新属性的方法。 来自Angular的开发者指南:

指令是一种行为或DOM转换,它由自定义属性,元素名称或类名称的触发器触发。指令允许您以声明方式扩展HTML词汇表。

您可以使用它们来添加HTML行为,定义 link 函数,该函数保持属于范围和DOM元素的变量之间的双向绑定,或者用于动态操作DOM,定义编译可以修改甚至生成新DOM元素和属性的函数。 将其视为扩展HTML并将其转换为域特定语言的方法。

答案 1 :(得分:4)

指令可以是属性,标签甚至是类名。

在HTML标记中编写它们后,它会被角度拾取并按照您定义的方式进行操作。

它使您能够定义新的自定义HTML元素,如或,或新的行为属性,如

<div angry></div>

每当有人点击该div时,他就会得到并警告“我很生气”。

您基本上可以完成所需的每个扩展,以使您的HTML尽可能精简和易懂。这一切都取决于你如何定义指令。