Sehen Sie sich die Dokumentation zum ng-Umhang an.
Aus der Dokumentation:
Die ngCloak-Direktive wird verwendet, um die Angular HTML-Vorlage zu verhindern kurz vom Browser in seiner rohen (unkompilierten) angezeigt werden Formular, während Ihre Anwendung geladen wird. Verwenden Sie diese Anweisung, um dies zu vermeiden der unerwünschte Flimmereffekt, der durch die HTML-Vorlagenanzeige verursacht wird.
Auch:
%Vor%Die Direktive kann auf das Element angewendet werden, aber das bevorzugte Verwendung ist die Anwendung mehrerer ngCloak-Direktiven auf kleine Teile des Seite, um das progressive Rendern der Browseransicht zu ermöglichen.
Wie es funktioniert:
Die folgenden Stile werden auf das Dokument angewendet (die angular.js-Datei fungiert im Wesentlichen als .css-Datei), wenn angular.js geladen ist (empfohlen im Kopf der Seite zu sein). Wenn angular tatsächlich bei DOM-Laden ausgeführt wird, entfernt es das ng-cloak-Attribut und entpackt die Elemente.
%Vor%Wenn Sie angular nicht in den Kopf Ihres Dokuments laden, können Sie die Stile manuell zum Kopf hinzufügen und alles funktioniert noch. Fügen Sie einfach
hinzu %Vor%Dies ist eine Vermutung aufgrund der Tatsache, dass Sie nur ein kleines Code-Snippet zur Verfügung gestellt haben, aber meine Vermutung ist, dass der Controller noch nicht initialisiert ist (unter der Haube wird eckig durch Ihr HTML-DOM analysieren und entsprechend handeln, wenn es aufgerufen wird.)
Wenn Sie eine einfache Route verwenden, würde dies dies vollständig verhindern.
Alternativ könnten Sie alle Ihre ng-if-Bedingungen mit einer css-Anzeige versehen: none; und dann durchlaufen Sie alle von ihnen, sobald die App geladen hat
Tags und Links javascript html angularjs