Angular2 - динамически загружать компонент из модуля

в моем угловом приложении у меня есть следующее:

export class MyComponent {
    subcompPath = "path-to-subcomp#SubcompClassName";
    @ViewChild("placeholder", { read: ViewComponentRef }) placeholderRef: ViewComponentRef;

/* Constructor where Compiler, ComponentFactoryResolver are injected */

    loadSubcomponent() {
        let [path, componentName] = this.subcompPath.split("#");
        (<any>window).System.import(path)
            .then((module: any) => module[componentName])
            .then((type: any) => {
                return this._compiler.compileComponentAsync(type)
            })
            .then((factory: any) => {
                let componentRef = this.placeholderRef.createComponent(factory, 0);
            });
    }
}

Мой подкомпонент объявляет поставщиков и прочее, директивы и каналы.

И теперь RC6 хочет сломать все снова. Компоненты не могут объявлять директивы и каналы, но они должны находиться в модуле, где объявлен компонент. Поэтому я должен загрузить с SystemJS не сам компонент, а модуль. Хорошо, а потом я должен использовать

return this._compiler.compileModuleAndAllComponentsAsync(type)

Хорошо, но как мне получить ссылку на фабрику этого конкретного компонента? Эта фабрика - все, что мне нужно, placeholderRef хочет ее в своем методе createComponent, верно?

Я попытался покопаться в исходном коде angular2 из github, но он довольно обширный, я должен попробовать из VS Code или чего-то другого, с intellisense, но я ленивый ... и я должен прочитать этот материал из документации, которая довольно тусклая в angular.io для этого конкретного аргумента, который является ленивой загрузкой компонентов и модулей БЕЗ маршрутизатора.

Любая помощь приветствуется, я думаю, что решение простое в применении, но его трудно найти без официальной документации.

Ответы на вопрос(2)

Ваш ответ на вопрос