VScode 使用全球纱线包获取类型

VScode type acquisition with global yarn packages

我在 VScode 中有一个 javascript 项目设置,但自动类型获取对我不起作用。 据我所知,VScode 检查 @types 目录的本地和全局 node_modules 文件夹。但是,我使用 yarn 那么我该如何告诉 VScode 使用正确的目录?

我正在使用打字稿将我的 JS 转换为 ES5,所以我有一个 tsconfig.json。我尝试将路径添加到 global yarn dir,但仍然没有成功。

在此先感谢您的帮助!

这个问题有几点,让我们看看TypeScript如何在JavaScript项目中加载类型:

  1. 从项目中包含的 d.ts 个文件加载类型。即使您使用 @types.
  2. 也会加载这些
  3. 查看本地 node_modules/@types
  4. 如果没有找到本地@types,则触发自动打字获取。这会将 @types 包安装到全局缓存中(与 npm/yarn 全局变量分开)

TypeScript 不检查 @types 的 npm/yarn 全局安装目录。

对于你的情况,我认为你需要:

  • 在本地安装您需要的所有 @types,然后作为 devDependencies 包含在您的 package.json.
  • 如果您只使用 JavaScript,请切换到 jsconfig 而不是 tsconfig。 TypeScript 项目没有默认启用自动类型获取