我在一个 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-relative
typescript.preferences.importModuleSpecifierEnding: minimal
到目前为止,这些都没有解决我的问题。
我有一个与此类似的 Angular 项目结构:
ApplicationName
- dist
- e2e
- node_modules
- projects
- company
- domain
- shared
- src
- app
tsconfig.json
内tsconfig.json
,我引用了shared
项目在paths
:{
"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 导入扩展(自动导入、 typescript 英雄、 typescript 导入程序),然后将我的 : typescript.preferences.importModuleSpecifier 从相对项目更改为相对项目。
关于typescript - VSCode 智能感知 typescript : Exclude path that is referenced in paths,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62534459/