2017-03-19 11 views
0

Ich sehe zahlreiche Beispiele von Angular2 Code Bootstrapping mit einem DOMContentLoaded Zuhörer:Best Practice für die Verwendung von DomContentLoaded in angular2?

document.addEventListener('DOMContentLoaded',() => { 
    platformBrowserDynamic().bootstrapModule(AppModule); 
}); 

und ohne:

platformBrowserDynamic().bootstrapModule(AppModule); 

Ich habe bei der Dokumentation sah und es scheint immer noch eine gültige Sache zu sein, aber keine Hinweise mit wann es verwendet werden sollte oder nicht.

Was sind die Gründe, es zu benutzen oder nicht zu benutzen?

Antwort

0

Es gibt keine Unterschiede zwischen Bootstrapping Angular App mit ersten oder zweiten Ansatz. Die Unterschiede sind, wenn es passiert.

Erste Annäherung wartet bis 'DOMContentLoaded' so wenn alles HTML vom Browser geparst wird. Das sollte sicherstellen, dass Ihr <appModule></appModule> für Angular JS verfügbar ist und es korrekt bootet.

Der zweite Ansatz wird versuchen, es sofort zu starten, und je nachdem, wie es geladen wurde, könnte es funktionieren oder nicht.

  • wenn sie es über <script> mit defer Attribute wird es funktionieren (als Ausführung verschoben wurde, bis HTML analysiert wurde)
  • wenn geladen kurz vor </body>
  • über einfache <script> in Kopf geladen, wenn geladen in Kopf ausfallen sollten funktioniert genauso gut wie HTML geparst wurde (dies ist eine gängige Methode, die auf eckigen Tutorialseiten verwendet wird)
Verwandte Themen