从JS文件(export.module)动态导入的Jest全局变量

时间:2018-11-05 12:33:26

标签: javascript webpack jestjs

我需要导入一个带有配置值的.js文件,以便在我的React应用中使用:

  

import config from './config'

这些值已在 webpack 配置中添加:

  

webpack.DefinePlugin({... config})

我需要将这些值导入jest.config.js

globals: {
  config: // Here config...
}

“我知道我们可以手动添加这些值,但是我想从此文件中添加它们,以防止维护所有值。”

谢谢!

1 个答案:

答案 0 :(得分:1)

  

https://jestjs.io/docs/en/configuration#globals-object

     

请注意,如果您在此处指定一个全局参考值(如对象或数组),并且某些代码在运行测试过程中对该值进行了更改,则该更改将不会在其他测试文件的测试运行中持续存在。另外,globals对象必须是json可序列化的,因此不能用于指定全局函数。

以下是有关在全局配置中添加全局变量的指南,其基本用法如下:

 import * as config from "path/to/config";    

 //...package.json || jest.config
 "jest": {
   "globals": {
     ...config
   }
 }

const config = {
  this: 'is now global'
}


console.log({
  jest: {
    globals: {
      ...config
    }
  }
})

您可以将其添加到globals对象中,然后照常导入配置