0

Angularは、リンク関数内で現在のスコープのインスタンス要素を提供します。

iElement角度パスは、標準のHTML要素を超えた処理を実行できますAngularはこれをどのように行いますか?最初にjQueryでラップしますか?

このangular-uitinymce実装のリンク要素は、どのようにして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 -Scope-時計を登録するためのディレクティブによって使用されるスコープ。

iElement -instanceelement-ディレクティブが使用される要素。子はすでにリンクされているため、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 に答える