Javascript Angular CLI 6:如何在主应用程序中使用库子项目?
我有一个Angular 6项目,它由一个主应用程序和一个单独的子项目组成,这个子项目是一个库。我试图从主应用程序中使用此库,但似乎无法使其正常工作 在Javascript Angular CLI 6:如何在主应用程序中使用库子项目?,javascript,angular,typescript,angular6,Javascript,Angular,Typescript,Angular6,我有一个Angular 6项目,它由一个主应用程序和一个单独的子项目组成,这个子项目是一个库。我试图从主应用程序中使用此库,但似乎无法使其正常工作 在tsconfig.json中,我有以下路径配置: "paths": { "@my-company/my-package/*": "dist/my-package/*" } 然后在主应用程序中,我像这样导入库: import { ButtonModule } from '@my-company/my-package/button'; 然而,当
tsconfig.json
中,我有以下路径
配置:
"paths": {
"@my-company/my-package/*": "dist/my-package/*"
}
然后在主应用程序中,我像这样导入库:
import { ButtonModule } from '@my-company/my-package/button';
然而,当我构建主应用程序时,我会遇到大量无法找到模块的错误。对于上面的import语句,我将得到以下错误:
Module not found: Error: Can't resolve '/Users/jattardi/code/myproject/dist/my-package/button'
但是,如果我检查dist/my package
目录,肯定会有一个按钮
目录包含类型定义
我的导入有子路径(例如,
@my company/my package/button
)而不是@my company/my package
)的原因是为了使其可树震动。我不确定这是否可行。由于这是由Angular 6/ng Packagegr生成的构建,我是否会丢失此功能?我在尝试在主应用程序中使用时遇到了相同的错误。我的回答无法解决这个问题,因为我正在尝试让我的惰性加载模块,我搬进了新的Angular6库,开始工作
我能够将我的库项目发布到npm,并将其作为npm依赖项在主应用程序中使用。例如:@santony/ngx材料。可能是一种解决方法,您可以这样做,直到问题得到解决。对于仍面临此问题的人,ng Packager的文档中有一个“操作方法”: 基本上 您所要做的就是创建一个
package.json
文件,并将其放在希望创建辅助入口点的位置。
my_package/testing/package.json
的内容可以非常简单:
{
“ngPackage”:{}
}
此外,在dev应用程序中,我已将路径引用添加到次要端点,因此它可以工作:
“@my company/my library/other”:[
“地区/我的图书馆/其他”
]