Как реализовать ленивую загрузку компонентов в Angular 2?

Как реализовать ленивую загрузку компонентов в Angular 2 (конкретно - в версии RC)?
  • Вопрос задан
  • 937 просмотров
Пригласить эксперта
Ответы на вопрос 3
@Kano
Т.к. на данный момент создание компонента из строки еще не реализовано
function resolveComponent(resolver, snapshot) {
        // TODO: vsavkin change to typeof snapshot.component === 'string' in beta2
        if (snapshot.component && snapshot._routeConfig) {
            return resolver.resolveComponent(snapshot.component);
        }
        else {
            return Promise.resolve(null);
        }
    }

RuntimeCompiler.prototype.resolveComponent = function (component) {
            if (isString(component)) {
                return PromiseWrapper.reject(new BaseException$1("Cannot resolve component using '" + component + "'."), null);
            }
            return this.compileComponentAsync(component);
        };

Поэтому есть только одна возможность ленивой загрузки - это использовать @angular/router-deprecated вместо @angular/router
И использовать например такой подход www.syntaxsuccess.com/viewarticle/lazy-loading-in-...
Ответ написан
Комментировать
uaKorona
@uaKorona
Front-End разработчик
WebPack позволяет делать подгрузку по требованию

require.ensure(['jquery'], function(require) {
  require("jquery");
});
Ответ написан
@ITZver
Вот на блоге своем давно писал про это. Webpack и LazyLoad модули Angular
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы