如何使用多个模块创建angular 6库

时间:2018-06-24 14:25:48

标签: angular6

我正在寻找一种创建具有多个模块的angular 6(通过Angular 6 CLI可能)库的方法,这些模块可以根据开发人员的需求自行导入。

到现在为止,我只找到了描述使用几个组件创建简单库的教程。所有这些都必须由库NgModule导入。 但目标是能够将某些模块导入生产应用程序,而无需从库模块中导入所有其他内容(组件等)。

3 个答案:

答案 0 :(得分:1)

尝试ng-packagr。 这是link,并带有使用ng-packagr创建角度库并导出单个模块的示例。但是您可以根据需要创建任意数量的模块并导出它们。

导出的模块可以从库中独立导入。

答案 1 :(得分:0)

我发现了非常有用的软件包@nrwl。 其功能之一是创建角度库后,在任何库中进行任何更改时,它们都会直接表示在使用它们的组件中。 在我看来,package比ng-packagr更适合创建库,在ng-packagr中进行任何更改后,您应该对其进行编译。

答案 2 :(得分:0)

子条目就是您要查找的内容。它为您的库添加了摇树支持。

<块引用>

子条目促进了摇树意味着当我们导入某些东西时,例如 MyOrgDropdownModule ,那么我们只会获得该子条目的实现(以及它显式导入的子条目,例如它可能使用 MyOrgIconModule )而什么也没有否则!

<块引用>

更重要的是,这在延迟加载模块的上下文中也能产生奇迹(所以不仅仅是主 / 急切 vs 延迟),因为子条目使 Angular CLI 能够做进一步的优化,比如将子条目提取到一个虚拟块中只会为真正使用它的特定设置的延迟加载功能加载!

我建议您阅读this article。总而言之,您将在单独的文件夹中隔离模块,并将 package.json 放入每个文件夹中。