0

Angular 在链接函数中提供了当前作用域的实例元素。

iElement角度通道能够做超出标准 HTML 元素的事情。角度如何做到这一点?先用 jQuery 包装它?

这个angular-ui tinymce 实现中的链接元素如何获得 tinymce 方法,例如下面第 49 行所示的方法:

elm.tinymce();

我知道 ui-tinymce 属性链接到名为 uiTinymce 的指令,并且 tinymce 包含在主 html 中,但我不明白 elm 如何获取方法 tinymce。

作为参考,我在下面的http://docs.angularjs.org/guide/directive中提供了有关 iElement 的相关文档。

联动功能:

function link(scope, iElement, iAttrs, controller) { ... }

链接函数负责注册 DOM 监听器以及更新 DOM。> 它在模板被克隆后执行。这是大多数指令逻辑 > 将被放置的地方。

scope - 范围 - 指令用于注册手表的范围。

iElement - 实例元素 - 使用指令的元素。仅在 postLink 函数中操作元素的子元素是安全的,因为子元素已经被链接。

4

1 回答 1

2

angular.element页面:

注意:Angular 中的所有元素引用总是用 jQuery 或 jqLit​​e 包裹;它们绝不是原始的 DOM 引用。

所以是的,iElement参数是一个 jQueryLite 或完整的 jQuery 对象,它具有 jQuery/jQueryLite 提供的所有相关附加方法。

这包括通过 jQuery 的插件机制添加的任何其他方法,这些方法具有能够直接在 jQuery 对象本身上调用这些方法的效果。

所以 TinyMCE JS 文件将有代码添加.tinymce()到所有 jQuery 对象的函数中,这就是iElement对象的方式。

那有意义吗?

于 2012-11-21T03:36:48.517 回答