带有 vscode 的打字稿路径在 ctrl 单击时解析错误

Posted

技术标签:

【中文标题】带有 vscode 的打字稿路径在 ctrl 单击时解析错误【英文标题】:typescript paths with vscode resolve wrong on ctrl click 【发布时间】:2021-11-27 11:46:11 【问题描述】:

我有一个库,我正在修改其源代码,我下载了它的源代码,并希望将 vscode、typescript 和 webpack 指向该文件。

在 webpack 中,我成功地为库添加了别名,但 vsc 似乎不想在 node_modules 上使用 tsconfig.jsonfiles 属性。

当 ctrl 点击导入时

import myModule from "myModule/breh"

像这样使用tsconfig

"baseUrl": "src",
"paths": 
  "myModule/*": ["myModule/src/*"]

它不会去正确的路径,它总是去node_modules

库的位置在src/myModule/src下。

【问题讨论】:

【参考方案1】:

当然。推荐的 baseUrl 是 node_modules。所以 errthing 应该相对于它,这意味着您需要在路径中添加的正确路径是

"baseUrl":"./node_modules",
"paths": 
    "exact name as in the import": ["../dir/file.d.ts"]


由于基础是节点模块,您需要告诉它在其父目录中输出

【讨论】:

不幸的是,在您 ctrl 单击导入的属性后,它仍然会转到 node_modules

以上是关于带有 vscode 的打字稿路径在 ctrl 单击时解析错误的主要内容,如果未能解决你的问题,请参考以下文章

在 VSCode 中使用 Prettier 格式化打字稿?

如何修复 VSCode 中的“‘CombinedVueInstance’类型上不存在属性 XX”错误? (带有打字稿的Vue)

使用带有打字稿的 eslint - 无法解析模块的路径

使用带有打字稿的 Vuex 4,类型“ComponentPublicInstance”上不存在属性“$store”

打字稿在vscode中找不到名称'test'

为啥 vscode 从打字稿缓存中导入包