TS-Jest 无法识别 webpack 定义插件变量



我正在尝试在我的应用程序中运行 (TS)-Jest,其中包含一些全局变量,这些变量在构建时由 Webpack 注入(使用定义插件)

例如:

console.log(`Current build: ${__BUILD_VERSION}`)

变量__BUILD_VERSION没有在代码中的任何位置定义,因此 TS 抱怨它。

下面是尝试运行 Jest 时的输出:

src/.../.../file.ts - error TS2304: Cannot find name '__BUILD_VERSION'.

我试图将它们定义为开玩笑的"全局变量",但没有运气。显然是一个打字稿错误,所以也许我应该尝试一些tsconfig.json

如果在运行jest时需要此变量,请在jest.config中设置globals标志标志(如果您将其用于配置,则在package.json中设置:

"globals": {
"__BUILD_VERSION": 123,
"YOUR_OTHER_VARIABLE": 'foo'
}

如果您需要修复 Typescript,则需要在某处声明该变量,例如创建globals.d.ts文件并在那里声明它:

declare const __BUILD_VERSION: string;

最新更新