Т.к. на данный момент создание компонента из строки еще не реализовано
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-...