声明 NgModule 的元数据



是否可以在运行时查询用@NgModule修饰的模块类的declarations

@NgModule({
    imports: [
    ...
    ],
    declarations: [
        Component1,
        Component2,
        Component3
    ]
})
export class MyModule { }

所以,我试图完成的大致是:

const declarations: Type[] = MyModule.declarations;
我不

完全确定,但我相信在 AOT 模式下这个答案是行不通的。除此之外,这是一个私有/顽皮的访问属性,可能会发生变化,但您可以像这样访问定义:

const descriptor = Reflect.getOwnPropertyDescriptor(MyModule, '__annotations__');
if (descriptor) {
  const decorator = descriptor.value && descriptor.value[0];
  if (decorator) {
    const { declarations } = decorator; 
  }
}

相关内容

  • 没有找到相关文章

最新更新