Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/453.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Jest v22.0.6始终将process.env数组转换为字符串_Javascript_Reactjs_Testing_Tostring_Jestjs - Fatal编程技术网

Javascript Jest v22.0.6始终将process.env数组转换为字符串

Javascript Jest v22.0.6始终将process.env数组转换为字符串,javascript,reactjs,testing,tostring,jestjs,Javascript,Reactjs,Testing,Tostring,Jestjs,我目前正在使用Thread 1.3.2,并试图从jest 22.0.5迁移到最新版本,但我确实在v22.0.6中发现了一个问题 这是我们非常简单的jest.config.js 这是一个更简单的setup.js,我们用来调试这个问题 const array = ['en', 'fr'] process.env.ARRAY = array console.log('process.env.ARRAY', process.env.ARRAY) 在我们的一个测试中,我们循环一个process.env数

我目前正在使用Thread 1.3.2,并试图从jest 22.0.5迁移到最新版本,但我确实在v22.0.6中发现了一个问题

这是我们非常简单的jest.config.js

这是一个更简单的setup.js,我们用来调试这个问题

const array = ['en', 'fr']
process.env.ARRAY = array
console.log('process.env.ARRAY', process.env.ARRAY)
在我们的一个测试中,我们循环一个process.env数组,这是我们的输出

22.0.5

console.log tools/test/setup.js:3
    process.env.ARRAY ['en', 'fr']
22.0.6

console.log tools/test/setup.js:3
    process.env.ARRAY en,fr

似乎每个process.env数组都要使用toString进行转换,这不是Jest特有的,只是process.env在Node.js中的工作方式

引自:

在process.env上指定属性将隐式地将值转换为字符串

因此,当您将数组['en','fr']分配给process.env.array时,它将转换为字符串en,fr

如果需要将此字符串转换回代码中其他位置的数组,可以使用:


谢谢但我确信我只有在那个版本的玩笑中才会遇到这个问题。早期版本或应用程序内部没有问题。
console.log tools/test/setup.js:3
    process.env.ARRAY en,fr
const array = process.env.ARRAY.split(',');