vscode自动类型获取开玩笑

ali*_*ari 17 jestjs visual-studio-code

我有vscode 1.9,我希望有智能测试的智能感知.问题是describe,it,expect等都是在开玩笑全局可用,你不需要import他们在您的测试文件.因此vscode不会为它们显示智能感知.

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

Mat*_*ner 33

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

添加jest到您的package.json:

"dependencies": {
  "jest": "^18.1.0"
}
Run Code Online (Sandbox Code Playgroud)

这只适用于您正在使用JavaScript但没有tsconfig.json.


安装 @types/jest

$ npm install @types/jest
Run Code Online (Sandbox Code Playgroud)

这应该适用于JavaScript和TypeScript项目.但是@types却可以通过禁用jsconfig.json/ tsconfig.json:http://www.typescriptlang.org/docs/handbook/tsconfig-json.html


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

{
    "typeAcquisition": {
        "include": [
            "jest"
        ]
    }
}
Run Code Online (Sandbox Code Playgroud)

这仅适用于启用自动填写采集时的JavaScript项目.

所有这些应该允许VSCode在没有导入或要求的情况下获取开玩笑的类型

  • 在这三个选项中,只有第二个对我有用:`npm install @ types / jest`。 (4认同)
  • 第二个解决方案(`npm i -D @types/jest`)效果很好 - 谢谢! (2认同)

wri*_*nds 6

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

因此,我决定手动导入我要在每个文件中使用的每个笑话全局.test.js,这允许建议与类型一起出现,但避免让建议出现在文件中.js

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