Ich studiere Angular.js und Require.js im Moment. Ich bin hier auf ein Problem gestoßen, während ich diese beiden zusammen benutze. Zum Beispiel in meinem HTML habe ich etwas sehr einfaches wie {{3 + 3}}. Ich fand heraus, dass dies nur bis zu 6 Sekunden nach dem Laden alles ausgewertet wird. Der Benutzer kann den gesamten Prozess deutlich sehen. Aber das ist nicht gut für mich. Ich will die Verzögerung hier nicht. Kann jemand erklären, warum das passiert ist? Liegt daran, dass ich manuell Bootstrap mache.Angular.js und Require.Js
Das ist mein main.js für require und meinen Bootstrap-Code.
require.config({
paths: {
jquery: 'lib/jquery/jquery-1.9.1.min',
bootstrap: 'lib/bootstrap/bootstrap.min',
angular: 'lib/angular/angular.min'
},
baseUrl: '/Scripts',
shim: {
'angular': { 'exports': 'angular' },
'bootstrap': { deps: ['jquery'] }
},
priority: [
'angular'
]
});
require(['angular', 'app/admin/app.admin', 'app/admin/app.admin.routes', 'app/admin/index/index', 'app/admin/app.admin.directives'], function (angular, app) {
'use strict';
angular.element(document).ready(function() {
angular.bootstrap(document, ['app.admin']);
});
});
Prost
Problem so gut: Sie können ihre Beschreibungen finden Sie hier. Ich denke, das liegt daran, dass ng-cover nur funktioniert, nachdem die Anwendung bootstrappt wurde. – Victor
Aktualisierte die Antwort. – mirrormx
Wie in dieser Antwort beschrieben, müssen Sie eine Anzeige definieren: none in Ihren Stilen, um alle ng-getarnten Elemente als verdeckt zu initialisieren, bis Angular die Möglichkeit hat, sie nach dem Bootstrap zu verdauen. Wenn Angular sie verarbeitet hat, macht es das Element sichtbar und verhindert, dass ungebundene Ausdrücke angezeigt werden, bevor Angular eine Chance hat, es zu tun. –