vuejs2 - 引用错误 : Response is not defined

标签 vuejs2 jestjs vue-test-utils

短版:

我正在使用 vue-test-utils 为我的 Vue 组件编写测试用例和 jest .

我正在尝试创建一个 Response对象在我的一个测试用例中,但我不断收到错误ReferenceError: Response is not defined
长版

当使用 jest 调度 Vuex 操作时,我试图模拟 API 响应。
我已经创建了一个这样的 Vuex Action

let fakeAccountList = [
  {"id":"abcd","title":"Random Account 1"},
  {"id":"pqrs","title":"Random Account 2"}
]
actions = {
   getAccounts: jest.fn(()=>{

     return new Promise((resolve, reject)=>{
       resolve(mockResponse(200,'ok',fakeAccountList))
      })
    })
 }
getAccounts action 返回一个解析为帐户列表的 Promise。 mockResponse功能如图:
mockResponse = (status, statusText, response) => {

  return new Response(response, {
    status: status,
    statusText: statusText,
    headers: {
      'Content-type': 'application/json'
    }
  });
};

mockResponse被调用,我收到错误 ReferenceError: Response is not defined
我发现了这个非常古老的问题:
https://github.com/facebook/jest/issues/930
评论表明它已修复,但是对我不起作用。我不想导入额外的库,例如 isomorphic-fetch只是为了这个。

这是我的 devDependenciespackage.json :
"devDependencies": {
    "@vue/cli-plugin-babel": "3.0.3",
    "@vue/cli-plugin-e2e-cypress": "3.0.3",
    "@vue/cli-plugin-eslint": "3.0.3",
    "@vue/cli-plugin-unit-jest": "3.0.3",
    "@vue/cli-service": "3.0.3",
    "@vue/test-utils": "1.0.0-beta.25",
    "babel-core": "7.0.0-bridge.0",
    "babel-jest": "23.6.0",
    "less": "3.0.4",
    "less-loader": "4.1.0",
    "lodash": "4.17.10",
    "node-sass": "4.9.2",
    "sass-loader": "7.0.3",
    "vue-template-compiler": "2.5.16",
  }

任何帮助,将不胜感激。提前致谢

最佳答案

我正在使用 React 应用程序,只需在您的模拟文件中添加以下语句即可解决该问题。希望这可能对您或其他人有所帮助。
import 'isomorphic-fetch'

关于vuejs2 - 引用错误 : Response is not defined,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52420318/

相关文章:

javascript - 如何在 Jest/Vue-test-utils 测试中导入/包含插件?

javascript - Vue root 和任何子组件之间的通信

vue.js - 无法使用退出键关闭 Vuetify 抽屉导航

typescript - 该表达式不可构造。类型 'typeof import("jspdf")' 没有构造签名

regex - 如何在 Jest 中忽略代码覆盖率中的所有 index.ts 文件? (正则表达式失败错误)

angular - Jest 遇到意外 token - 导入 (Angular CLI 6)

javascript - vue-test-utils - 如何处理 $refs?

vue.js - 如何使用 vue-test-utils 打开 bootstrap-vue 模式?

vue.js - 类型错误 : Cannot read property 'getters' of undefined

javascript - 在.vue组件中组合多个数据