2016-07-25 6 views
0

Ich bin sehr neu zu angularjs. Ich habe wenig Verwirrung mit Link und kompiliere Verwendung in Direktiven. Kann mir bitte jemand sagen in welchen Szenarien wir Link verwenden und kompilieren müssen.Angularjs: Wie kann ich wissen, wann "Kompilieren" wann "Link" in Direktiven verwenden soll?

+1

Mögliches Duplikat [Was ist der Unterschied zwischen der Kompilierung und Link-Funktion in AngularJS] (http://stackoverflow.com/questions/12164138/what-is-the-difference- between-compile-and-link-function-in-angularjs) – kukkuz

+0

Recherchieren Sie bitte, bevor Sie Fragen stellen. –

Antwort

2

Die Kompilierung Phase

Wenn das DOM geladen Angular die Kompilierung Phase beginnt, wo Es durchläuft das Markup von oben nach unten und ruft compile für alle Direktiven auf. Grafisch wir es wie so ausdrücken könnte:

Ein Bild, welches die Kompilation Schleife für Kinder

Es ist vielleicht wichtig, dass in diesem Stadium zu erwähnen, die Vorlagen der Kompilierung Funktion ruft die Quelle Vorlagen (nicht Instanzvorlage).

Der Link Phase

DOM-Instanzen sind oft einfach das Ergebnis einer Quellvorlage auf das DOM gemacht zu werden, aber sie können durch ng-Repeat oder eingeführt on the fly erstellt werden.

Immer wenn eine neue Instanz eines Elements mit einer Direktive zum DOM gerendert wird, beginnt die Link-Phase.

In dieser Phase Angular Anrufe Controller, Pre-Link, iteriert Kinder und rufen nach Link auf allen Richtlinien, etwa so:

Unten Links gelangen Sie zur Kompilierung vs Link klare Vorstellung geben.

Angular directives - when and how to use compile, controller, pre-link and post-link

http://odetocode.com/blogs/scott/archive/2014/05/28/compile-pre-and-post-linking-in-angularjs.aspx

Verwandte Themen