[英]Angular 9 tsconfig.json & tsconfig.app.json paths are not working as expected
我有一个 Angular 9 项目,其中包含多个项目和一个libs
目录。 结构是这样的:
- libs
- projects
| - app1
| - tsconfig.app.json
| - app2
| - tsconfig.app.json
| - app3
| - tsconfig.app.json
- tsconfig.json
我的主要tsconfig.json
看起来像这样:
{
"compileOnSave": false,
"compilerOptions": {
"baseUrl": "./",
"paths": {
// Shared libs
"@libs/*": ["libs/*"],
// Projects
"@app1/*":["projects/app1/src/app/*"],
"@app2/*": ["projects/app2/src/app/*"],
"@app3/*": ["projects/app3/src/app/*"]
},
"outDir": "./dist/out-tsc",
"sourceMap": true,
"declaration": false,
"downlevelIteration": true,
"experimentalDecorators": true,
"module": "esnext",
"moduleResolution": "node",
"importHelpers": true,
"target": "es2015",
"typeRoots": [
"node_modules/@types"
],
"lib": [
"es2018",
"dom"
]
},
"angularCompilerOptions": {
"fullTemplateTypeCheck": true,
"strictInjectionParameters": true
}
}
每个tsconfig.app.json
看起来像这样:
{
"extends": "../../tsconfig.json",
"compilerOptions": {
"baseUrl": "./src",
"paths": {
"@modules/*": ["app/*"],
"@core/*": ["app/core/*"],
"@environments/*": ["environments/*"],
},
"outDir": "../../out-tsc/app",
"types": []
},
"files": [
"src/main.ts",
"src/polyfills.ts"
],
"include": [
"src/**/*.d.ts"
],
"exclude": [
"src/test.ts",
"src/**/*.spec.ts"
]
}
问题是在每个应用程序中,@ @libs
路径总是抛出Cannot find module '@libs/cool-module.module'
。 tsconfig.app.json
中的其他路径在编译时运行良好。
注意:我的 VSCode 智能感知识别@libs/...
路径没有问题。 问题仅在编译时出现。
可能是什么问题? 谢谢!
我可以找到我的 tsconfig 文件的 1 个不同之处。 您是否实施了 rootDir 密钥?
tsconfig.ts
"compilerOptions": {
....
"baseUrl": ".",
"lib": ["es2017", "dom"],
"rootDir": "."
....
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.