angular - Angular 6库包中的动态模块导入

标签 angular typescript webpack angular-cli

我正在开发一个包含许多模块和组件的 Angular 库,其中之一是插件加载系统。

插件加载系统的工作方式基于以下假设:导入它的项目(通过 npm)将包含一个“plugins”目录,其根目录中有一个“index.ts”文件,插件加载服务将导入index.ts 导出的任何组件。

我正在使用动态模块导入语法 - async import('...') 语句,当它指向物理上存在的文件时,它工作得很好,但这样的文件赢了在我编译/发布我的库时它不存在,它只存在于稍后阶段,在使用它的项目中。

我如何“欺骗”Angular 编译器在不存在 ../../plugins 模块的情况下打包库,而不是在运行时获取插件?

最佳答案

您可以使用动态模块加载器,例如 System.JS。

有关类似的实现,请参阅此问题:

Load new modules dynamically in run-time with Angular CLI & Angular 5

关于angular - Angular 6库包中的动态模块导入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51208264/

相关文章:

找不到 Angular 自定义管道

javascript - 如何按值将对象传递给 Angular2+ 组件

javascript - 包未在项目中正确导入

javascript - 即使对象属性存在,Typescript 也无法访问它们

javascript - 在子文件夹中的 Vuejs 中全局注册组件

css - Angular 2 Material - 如何居中进度微调器

javascript - 使用脚本标签在 Angular 8 应用程序上实现 Ecwid

typescript - 如何为 Ionic 2 中的所有请求设置默认 Http header?

javascript - AWS Amplify 入门教程中使用 JavaScript 的 Webpack 服务器无法工作

jquery - 捆绑(webpack/browserify)是否比通过 CDN 更快?