如何从异常位置的node_modules获得VSCode中的intellisense



如何使VSCode为安装在不同位置的模块查找类型声明?

/
└── Users
└── me
├── foo
|   └── node_modules
|       └── some-module
├── bar
|   └── file.ts
└── tsconfig.json
// bar/file.ts
import {} from 'some-module'
// ^^^^^^^^^^^^^ Cannot find module 'some-module' or its corresponding type declarations.ts(2307)

我尝试了tsconfig.json中的paths选项,但它没有工作,因为它试图在foo/node_modules中找到一个名为some-module.ts的文件(在这种情况下,它似乎不知道如何解释package.json文件(

我尝试了tsconfig.json中的rootDirs选项,但它被忽略了,因为它显然只用于尝试解析相对导入(而some-module不是相对导入(。

我怎样才能做到这一点?

尝试使用typeRoots编译器选项:

// /Users/me/tsconfig.json
{
"compilerOptions": {
"typeRoots": [
"./foo/node_modules",
// maybe other locations
],
},
}

请注意,typeRoots的默认值将被替换,而不是扩展。有关详细信息,请参阅本期。

最新更新