TS2307:找不到模块“@jest/globals”或其相应的类型声明

Yan*_*ova 5 jestjs ts-jest

我遇到错误 TS2307:在导入默认测试套件的值时找不到模块“@jest/globals”或其相应的类型声明(但它成功通过

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

describe('Example test', () => {
    test('something', () => {
        expect('').toBeFalsy()
    })
})
Run Code Online (Sandbox Code Playgroud)

我的package.json

"devDependencies": {
        "@types/jest": "^27.0.3",
        "@types/node": "^16.11.11",
        ...
        "typescript": "^4.4.4",
    },
    "optionalDependencies": {
        ...
    },
    "dependencies": {
        "@jest/globals": "^27.4.2",
        "babel-preset-jest": "^27.4.0",
        ...
    }
}

Run Code Online (Sandbox Code Playgroud)

有人可以帮助我吗?

Mic*_*sky 2

如果您使用ts-jest,则包版本应与其他 Jest 库的版本相同。

@jest/globals我的问题通过降低、jestjest-environment-jsdomto的版本得到解决29.1.1,这是 的最新版本ts-jest

    "@jest/globals": "29.1.1",
    "jest": "29.1.1",
    "jest-environment-jsdom": "29.1.1",
    "ts-jest": "29.1.1"
Run Code Online (Sandbox Code Playgroud)