如何为 WebStorm 中的多个源目录解析 tsconfig.app.json 中的别名
How to resolve alias in tsconfig.app.json for multiple source directories in WebStorm
我在 src
目录之外生成了一些源文件。
结构是:
- project
- generated
- $ui-services
some-other.service.ts
- src
- app
- $ui-services
some.service.ts
在tsconfig.app.json中我指定:
"compilerOptions": {
...
"paths": {
...
"@ui-services/*": ["app/$ui-services/*", "../generated/$ui-services/*"],
...
}
},
"include": [
"./**/*.ts",
"../generated/**/*.ts"
]
在 SomeOtherService 中,我现在可以像这样导入 SomeService:
import {SomeService} from '@ui-services/some.service';
它像预期的那样工作,但现在我失去了其他一些 WebStorm 开发支持service.ts。 WebStorm 似乎无法正确解析别名。
我已经尝试按照某些人的建议将这两个文件夹标记为资源根目录,但这没有帮助。
我能做些什么来修复其他目录中文件的分辨率吗?
在命令行中 运行 tsc
时,您将面临同样的问题。 Typescript 编译器使用最近的 tsconfig.*.json
当前文件包含在,扫描从文件目录到项目根目录的文件夹。 generated/$ui-services/some-service.service.ts
最近的配置文件是位于项目根目录下的 tsconfig.json
文件,此配置没有定义任何别名,因此 tsc 报告 TS2307
错误,成员不能得到解决。
将路径映射复制到根配置应该可以解决问题:
"paths": {
"@ui-services/*": ["src/app/$ui-services/*", "generated/$ui-services/*"]
},
我在 src
目录之外生成了一些源文件。
结构是:
- project
- generated
- $ui-services
some-other.service.ts
- src
- app
- $ui-services
some.service.ts
在tsconfig.app.json中我指定:
"compilerOptions": {
...
"paths": {
...
"@ui-services/*": ["app/$ui-services/*", "../generated/$ui-services/*"],
...
}
},
"include": [
"./**/*.ts",
"../generated/**/*.ts"
]
在 SomeOtherService 中,我现在可以像这样导入 SomeService:
import {SomeService} from '@ui-services/some.service';
它像预期的那样工作,但现在我失去了其他一些 WebStorm 开发支持service.ts。 WebStorm 似乎无法正确解析别名。
我已经尝试按照某些人的建议将这两个文件夹标记为资源根目录,但这没有帮助。
我能做些什么来修复其他目录中文件的分辨率吗?
在命令行中 运行 tsc
时,您将面临同样的问题。 Typescript 编译器使用最近的 tsconfig.*.json
当前文件包含在,扫描从文件目录到项目根目录的文件夹。 generated/$ui-services/some-service.service.ts
最近的配置文件是位于项目根目录下的 tsconfig.json
文件,此配置没有定义任何别名,因此 tsc 报告 TS2307
错误,成员不能得到解决。
将路径映射复制到根配置应该可以解决问题:
"paths": {
"@ui-services/*": ["src/app/$ui-services/*", "generated/$ui-services/*"]
},