Могу ли я получить фабрики компонентов, объявленные в NgModule, при использовании Ivy? - PullRequest
0 голосов
/ 25 марта 2020

Я использую Angular 9 с Плющ включен , и я пытаюсь лениво загрузить NgModule, а затем создать экземпляр компонента, который объявлен им. Модуль выглядит следующим образом:

@NgModule({
  declarations: [MyComponent]
})
export class MyModule {}

Одна вещь, которую я попробовал, - это использовать Compiler:

const myModule = await import('./my-module').then(m => m.MyModule);
const moduleFactories = this.compiler.compileModuleAndAllComponentsSync(myModule);

Теперь переменная moduleFactories должна иметь фабрику для модуля и список фабрик компонентов для каждого компонента, объявленного модулем (в данном случае для MyComponent).

Это прекрасно работает, но не тогда, когда я запускаю его с флагом --prod.

Я заметил, что при включенной оптимизации (в angular. json) объявления полностью удаляются, и список фабрик компонентов в этом случае пуст.

Это Жук? Есть ли способ, которым я могу достичь того, чего хочу?

...