angular - 如何获取 Angular 2 中当前模块的元数据?

标签 angular metadata angular2-aot angular2-modules

我想获取当前 NgModule 的元数据,以便获取 declarationsproviders 的列表,以便填写我创建的动态模块以模式显示组件。

如何做到这一点?

最佳答案

您可以使用 reflect-metadata 访问声明包裹。但是,您确实需要安装此包并将其包含在您的项目中。之后你可以得到这样的注释:

let annotations: DecoratorFactory[] = Reflect.getMetadata('annotations', ModuleClass);

如果 @NgModule 是那里唯一的注解,我猜它是,你可以像这样访问声明,否则你必须猜测正确的 index:

let declarations: any[] = annotations[0].declarations;

查看此 answer进一步引用

关于angular - 如何获取 Angular 2 中当前模块的元数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41893946/

相关文章:

angular - Angular 延迟加载会减小包大小吗?

javascript - 根据路线隐藏和显示 Angular 4 组件

node.js - Angular-cli aot 构建在生产模式下失败

ajax - Angular HttpClient 流

asp.net-mvc - 使用 .net mvc 在 IIS angular 2 应用程序上发布

ffmpeg 通过 handler_name 指定流

function - 如何动态查找 Clojure 函数的元数据?

R:改进工作流程并跟踪输出

Angular 4 Webpack 2 & AOT : Unexpected closing tag "a"

angular - 如何调试 angular 2 aot 故障