我在created a stackblitz中尝试使用HelloComponent动态实例化ReflexiveInjector,并且在应用模块HelloComponent数组中列出了entryComponents

但是我仍然得到:


  组件HelloComponent不是任何NgModule的一部分,或者该模块尚未导入到您的模块中。


有什么想法吗?

Added a link to this SO in this feature request asking for virtual / logical modules。如果您喜欢该建议,请竖起大拇指。

最佳答案

您还应该在模块的声明数组中声明HelloComponentRead the official docs about entrycomponents

import { NgModule } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { FormsModule } from '@angular/forms';

import { AppComponent } from './app.component';
import { HelloComponent } from './hello.component';

@NgModule({
  imports:      [ BrowserModule, FormsModule ],
  entryComponents: [HelloComponent],
  declarations: [ AppComponent, HelloComponent ], // declare here
  bootstrap:    [ AppComponent ]
})
export class AppModule { }

10-06 03:12