问题描述
在编译 Angular 库时,我收到关于我的子库的 rootDir 的错误
library/services/src/public-api.ts:31:15 - error TS6059: File 'C:/libname/library/services/src/orders/orders.service.ts' is not under 'rootDir' 'C:/libname\library\classes\src'. 'rootDir' is expected to contain all source files.
我逐渐明白,在 Angular 库中的各个二级条目之间使用相对导入并不是一个好习惯。所以我在 TSConfig 中将我的代码分为二级条目 + 设置路径
代码结构
library
services
src
public-api.ts
package.json
models
src
public-api.ts
package.json
src
public-api.ts
package.json
TSConfig
{
"rootDir": "./library/","paths": {
"@core/services": [ "library/services/src/public-api.ts" ]
}
}
angular.json
{
"projects": {
"lib": {
"root": "library","sourceRoot": "library"
}
}
}
所以问题是 - 如何修复各个辅助入口点或文件结构之间的导入并使项目编译正常?我知道辅助入口点的编译是分开的,并且“被视为一个单独的项目”,因此是错误的。因此,我是否应该添加单独的辅助入口点作为对等依赖项?
当然还有更多的路径和次要端点 - 但这与问题无关,这足以显示我的文件结构和设置
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)