Obecnie studiuję Angular.js i Require.js. Napotkałem problem tutaj, gdy używam tych dwóch razem. Na przykład w moim html mam coś bardzo prostego, jak {{3 + 3}}. Dowiedziałem się, że zostanie to ocenione na 6 kilka sekund po załadowaniu wszystkiego. Użytkownik może wyraźnie zobaczyć cały proces. Ale to nie jest dobre dla mnie. Nie chcę tego opóźnienia. Czy ktoś może wyjaśnić, dlaczego tak się stało? Czy to dlatego, że robię ręcznie bootstrap.Angular.js i Require.Js
To jest mój main.js dla potrzeb i mój kod bootstrap.
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']);
});
});
Cheers
Nie działa tak dobrze. Myślę, że to dlatego, że ng-cloak działa tylko po bootstrapowaniu aplikacji. – Victor
Zaktualizowano odpowiedź. – mirrormx
Zgodnie z opisem w tej odpowiedzi, musisz zdefiniować wyświetlacz: brak w twoich stylach, aby zainicjować wszystkie ukryte elementy, ukryte do momentu, w którym Angular ma szansę przetrawić je po bootstrapie. Kiedy Angular je przetworzył, czyni element widocznym, zapobiegając wyświetlaniu niezwiązanych wyrażeń, zanim Angular ma szansę to zrobić. –