我在 VScode 中有一个 javascript 项目设置,但自动类型获取对我不起作用。
据我所知,VScode 检查本地和全局 node_modules
文件夹中的 @types
目录。但是,我使用yarn,那么我该如何告诉 VScode 使用正确的目录呢?
我正在使用 typescript 将 JS 转换为 ES5,所以我有一个 tsconfig.json。我尝试将路径添加到全局 yarn 目录
,但仍然没有成功。
预先感谢您的帮助!
最佳答案
这个问题有几个要点,所以让我们看看 TypeScript 如何在 JavaScript 项目中加载类型:
- 从项目中包含的
d.ts
文件加载类型。即使您使用@types
,这些也会加载。 - 检查本地
node_modules/@types
- 如果没有找到本地
@types
,则触发自动类型获取。这会将@types
包安装到全局缓存中(与您的 npm/yarn 全局变量分开)
TypeScript 不会检查 npm/yarn 全局安装目录中的 @types
。
就您而言,我相信您需要:
- 在本地安装您需要的所有
@types
,然后将其作为 devDependency 包含在您的package.json
中。 - 如果您仅使用 JavaScript,请切换到
jsconfig
而不是tsconfig
。默认情况下,TypeScript 项目没有启用自动类型获取
关于javascript - 使用全局 yarn 包获取 VScode 类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44031152/