Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/28.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Angular CLI 6:如何在主应用程序中使用库子项目?_Javascript_Angular_Typescript_Angular6 - Fatal编程技术网

Javascript Angular CLI 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'; 然而,当

我有一个Angular 6项目,它由一个主应用程序和一个单独的子项目组成,这个子项目是一个库。我试图从主应用程序中使用此库,但似乎无法使其正常工作

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”:[
“地区/我的图书馆/其他”
]