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?
Antwort
What is the difference between compile and link function in angularjs
beantwortet Bereits auf Stack-Überlauf und hat eine ausgezeichnete Erklärung
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
- 1. Wann Link Funktion und kompilieren Funktion in angularjs verwenden?
- 2. Wann soll ich eine Direktive schreiben?
- 3. Wie kann XMLHttpRequest wissen, wann der Callback aufgerufen werden soll?
- 4. Wissen, wann cordova.file.externalRootDirectory in Android
- 5. Woher wissen Sie, wann Sie einen XML-Parser verwenden und wann ActiveResource verwendet werden soll?
- 6. , wie zu wissen, wann ein Kind Fenster in AngularJS
- 7. Kompilieren von Direktiven über Service in angularjs
- 8. Wann System() verwenden und wann execv *() verwenden?
- 9. Wann sollte (und soll ich nicht) Scales @inline Annotation verwenden?
- 10. Wie kann ich wissen, wann eine Anfrage gestartet wurde?
- 11. Wann ich Strings oder Symbole in CLIPS verwenden soll
- 12. wie kann Komponente in Eisen-Seiten wissen, wann es
- 13. Wann sollte ich getElementById verwenden?
- 14. Wann node.js verwenden und wann Ajax verwenden?
- 15. Wann sollte ich Threads verwenden?
- 16. Wann muss ich @WebServiceRef verwenden?
- 17. Wissen, wann DataBinding abgeschlossen ist
- 18. Wann "if" und "wann" in Clojure verwenden?
- 19. Wann sollte ich einen GET vs einen Link verwenden?
- 20. Wann sollte ich async verwenden/abwarten und wann nicht?
- 21. Wann wissen Sie, wann Sie ein TreeSet oder LinkedList verwenden müssen?
- 22. Wie kann man wissen, wann der OWIN-Cookie abläuft?
- 23. Wann kann ich Cell oder RefCell verwenden?
- 24. Wann kann ich ConfigureAwait (false) nicht verwenden?
- 25. Wann und wann nicht CoreAnimation verwenden
- 26. Wann WebResponse.Close() aufgerufen werden soll
- 27. Wann soll super.onPause() aufgerufen werden?
- 28. Wann @ in einer Rails-Ansicht verwendet werden soll und wann ein Symbol verwendet werden soll?
- 29. AngularJS Direktiven Link Funktion Ausführungsreihenfolge mit require
- 30. Wann sollte ich __forceinline anstatt inline verwenden?
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
Recherchieren Sie bitte, bevor Sie Fragen stellen. –