【发布时间】:2020-10-13 11:55:49
【问题描述】:
我在一个 Angular 应用程序上工作,其中一些代码被分组到他们自己的 (npm) 项目中,以便其他应用程序可以引用它们。
当我在 app 文件夹中编写代码时,VSCode 的 Intellisense 建议自动导入以下路径,这两种路径都有效:
import 'FooComponent' from module "../../../projects/company/shared/src/foo/foo.component";
import 'FooComponent' from module "@company/shared";
我的目标是让"@company/shared" 导入成为默认选择。 如果可以完全隐藏相对路径,那就更好了。到目前为止我已经尝试过了:
typescript.preferences.importModuleSpecifier: non-relativetypescript.preferences.importModuleSpecifierEnding: minimal- 指定路径后排除 tsconfig.json 中的目录。
到目前为止,这些还没有解决我的问题。
我有一个类似这样的 Angular 项目结构:
ApplicationName
- dist
- e2e
- node_modules
- projects
- company
- domain
- shared
- src
- app
tsconfig.json
在tsconfig.json内,我在paths中引用了shared项目:
{
"compilerOptions": {
// standard stuff
"baseUrl": "src",
"paths": {
@company/domain: [
../projects/company/domain/src/public-api
],
@company/shared: [
../projects/company/shared/src/public-api
]
},
"exclude": [
"./dist/**,",
"**/projects/company"
]
}
有没有办法隐藏冗长的"../../../projects/company/shared/src/foo/foo.component" 导入建议?当foo 有多个自动完成建议时,它会占用默认值并添加噪音。
【问题讨论】:
标签: typescript visual-studio-code path intellisense