vscode jest 的自动类型获取

vscode automatic type acquisition for jest

我有 vscode 1.9 并且我想要智能感知来进行有趣的测试。问题是 describeitexpect 等在全球范围内都是可用的,你不需要在你的测试文件中 import 它们。所以 vscode 不会为他们显示智能感知。

是否有自动获取类型的全局配置?

在这种情况下,您有几个选择:

jest 添加到您的 package.json:

"dependencies": {
  "jest": "^18.1.0"
}

这仅在您工作 JavaScript 且没有 tsconfig.json 时有效。


安装@types/jest

$ npm install -D @types/jest

这应该适用于 JavaScript 和 TypeScript 项目。但是 @types 但可能会被 jsconfig.json/tsconfig.json 禁用:http://www.typescriptlang.org/docs/handbook/tsconfig-json.html


在工作区的根目录中创建一个 jsconfig.json 文件,专门包含笑话:

{
    "typeAcquisition": {
        "include": [
            "jest"
        ]
    }
}

这仅适用于 JavaScript 启用自动打字获取的项目。

所有这些都应该允许 VSCode 在没有 importrequire

的情况下获取笑话的打字

npm install -D @types/jest

编辑jest.config.js

  typeAcquisition: {
    include: ['jest'],
  },

我尝试安装 @types/jest,它确实有效,但问题是它导致我的 .js 文件中也出现了开玩笑的建议。我无法弄清楚如何仅在 .test.js 文件中获得 testexpect 等的全局建议,但 不是 .js 个文件。

所以我决定手动导入我将在每个 .test.js 文件中使用的每个 jest global,这允许建议与类型一起出现但避免建议出现在 .js文件:

import { test, expect } from '@jest/globals'