Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/427.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/40.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标准样式不识别笑话_Javascript_Node.js_Jestjs - Fatal编程技术网

JavaScript标准样式不识别笑话

JavaScript标准样式不识别笑话,javascript,node.js,jestjs,Javascript,Node.js,Jestjs,我需要设置jest并在使用npm测试时一起工作 现在,当我运行npm测试时测试失败,因为JavaScript标准样式抛出了一个错误: 'test' is not defined. 'expect' is not defined. 我可以通过在package.json文件中为jest定义一些全局变量来解决这个问题 "standard": { "globals": [ "fetch", "test", "expect" ] } 但

我需要设置jest并在使用
npm测试时一起工作

现在,当我运行
npm测试时
测试失败,因为JavaScript标准样式抛出了一个错误:

'test' is not defined.
'expect' is not defined. 
我可以通过在package.json文件中为jest定义一些全局变量来解决这个问题

"standard": {
    "globals": [
        "fetch",
        "test",
        "expect"
    ]
}
但我肯定不认为这是一个好的解决办法

在我的测试用例sum.test.js中

const sum = require('./sum')    
test('adds 1 + 2 to equal 3', () => {
    expect(sum(1, 2)).toBe(3)
})
在my package.json中:

"scripts": {
    "test": "standard && jest",
}
问题:

  • 如何配置JavaScript标准样式,以便在与jest一起使用时不会引发错误

    • 我找到了解决办法

      在package.json中

      "standard": {
        "env": [ "jest" ]
      }
      
      或者在测试用例中:

      /* eslint-env mocha */
      

      .eslintrc.js
      文件中,包括以下设置,您就可以开始了

      "env": {
        "node": true,
        "jest": true
      }
      

      如果您使用的是
      .eslintrc
      .eslintrc.json
      文件,请使用适当的语法。

      我想
      /*eslint env mocha*/
      应该是
      /*eslint env jest*/
      在我的情况下,我想使用,但没有被识别出来。根据最初的问题,我在
      标准
      entry package.json中添加了
      “globals”:[“fail”]
      ,它似乎有效,但我相信这将允许
      失败
      出现在所有文件中,而不仅仅是测试中。在测试用例中效果确实更好,然而,对于一个快速修复,当你开始一个玩具项目时,在全球范围内定义环境并不是一件坏事。