programing

ReferenceError: 응답이 정의되지 않았습니다.

firstcheck 2022. 7. 26. 00:21
반응형

ReferenceError: 응답이 정의되지 않았습니다.

쇼트 버전:

Vue 컴포넌트의 테스트 케이스를 작성하고 있습니다.vue-test-utils그리고.jest.

작성하려고 합니다.Response테스트 케이스 중 하나에서 오브젝트가 표시되지만 오류가 계속 발생합니다.ReferenceError: Response is not defined

롱 버전

vuex 액션이 joke를 사용하여 디스패치될 때 API 응답을 조롱하려고 합니다.이렇게 Vuex 액션을 만들었습니다.

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))
      })
    })
 }

getAccountsaction은 계정 목록으로 해결되는 약속을 반환합니다.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",
  }

어떤 도움이라도 주시면 감사하겠습니다.잘 부탁드립니다

리액트 어플리케이션을 사용하고 있는데, 당신의 모의 파일에 아래 문장을 추가하는 것만으로 문제가 해결되었습니다.이것이 당신이나 다른 사람들에게 도움이 되기를 바랍니다.

import 'isomorphic-fetch'

언급URL : https://stackoverflow.com/questions/52420318/referenceerror-response-is-not-defined

반응형