1

$compileがありPre-linking-function、APIAngularJSドキュメントには、 で DOM 変換を行うのは安全ではないと書かれていますPre-linking-function。誰も理由を知っていますか?

API ドキュメントのセクションへの参照

4

2 に答える 2

2

まず、リンクとは?

linkingangular がモデルを DOM にバインドするために使用するプロセスです。

リンク関数は、DOM リスナーの登録と DOM の更新を担当します。テンプレートが複製された後に実行されます。これは、ディレクティブ ロジックのほとんどが配置される場所です。~AngularJS API ドキュメンテーション

以下は、Angular がどのように機能するかを示す非常に優れた図です。

ここに画像の説明を入力

では、なぜDOMinを操作できないのpre-linkingでしょうか。

pre-linkingリンクが発生する前に発生するためです(これも、角度がモデルをコンパイルしてバインドし、モデルをDOM操作できるようにする部分です)。pre-linkingそのため、 Angular の間は、DOMとその要素をまったく操作できないことを認識していません。

図を参照するには:

  • pre-linkingすべての矢印/線がボックス間に描画される前になります
  • linking矢印/線が描かれているのフェーズになります
  • post-linkingすべての矢印/線が描かれ、ピースが接続された後になります
于 2016-01-12T14:53:06.597 に答える