6

我很难理解 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 ...

4

3 回答 3

9

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

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

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

于 2013-02-02T15:45:35.263 回答
4

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

一旦您将它们写入 HTML 标记,它就会被 Angular 拾取并按照您定义的方式进行操作。

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

<div angry></div>

每当有人单击该 div 时,他都会收到“我很生气”并发出警报。

你基本上可以做你需要的每一个扩展,以使你的 html 尽可能简洁和易于理解。这一切都取决于你如何定义你的指令。

于 2013-02-02T14:20:11.393 回答
0

AngularJS 指令是 HTML 模板标记(即属性、元素和 CSS 类)和支持 JavaScript 代码的组合。angularJs JavaScript 代码定义了 html 元素的 html 数据和行为。

AngularJs 指令用于扩展 HTML 词汇表,即它们用新的行为装饰 html 元素并帮助以有趣的方式操作 html 元素的属性。

AngularJS 提供了一些内置指令,例如 ng-app、ng-controller、ng-repeat、ng-model 等

于 2016-12-05T06:42:39.920 回答