inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

[코드캠프] 부트캠프에서 만든 고농축 프론트엔드 코스

33-01-jest

33-01-jest 실습 도중 에러가 발생합니다.

해결된 질문

531

park tae young

작성한 질문수 1

0

스크린샷 2023-10-10 오후 7.31.23.png

스크린샷 2023-10-10 오후 7.29.32.png

라이브러리들을 전부 설치하고 버전도 맞춰 보았는데

"Cannot use import statement outside a module"

이 에러가 뜨면서 테스트가 진행이 되지 않습니다.

무슨 문제인지 모르겠습니다.

 

react node.js seo graphql next.js

답변 1

0

노원두

안녕하세요! tae young님!

자바스크립트에서 다른 파일을 불러오는 방식으로 크게 2가지가 있어요!

  1. commonjs 방식(require 명령어 사용)이라고 불러요!
    ex) const MyContainer = require("./mycontainer")

  2. module 방식(import 명령어 사용)이라고 불러요
    ex) import MyContainer from './mycontainer'

 

여기서 commonjs기반의 javascript 파일 확장자를 .cjs 파일이라고 합니다!

또한, module 기반의 javascript 파일 확장자를 .mjs 파일이라고 해요!

마지막으로, 이 둘을 모두 지원하는 javascript 파일 확장자를 .js 파일이라고 합니다!
(하지만, .js파일은 commonjs가 기본이며, 추가적인 설정시 module도 가능해요!)

 

위 내용을 바탕으로 정리하면, 우리가 여태까지 사용했던 .js파일들에서 import가 되었던 이유는 next에서 추가적인 설정으로 module이 가능하도록 되어있었기 때문에 import 명령이 가능한거였어요! 원래는 안되며 require 명령을 사용해야 하는거랍니다!(webpack, babel 등의 키워드를 공부해보세요!^^)

 

다시 질문으로 돌아가서, 이러한 설정이 들어가있지 않은 jest.config.js 파일은 내부에서 import 명령을 사용할 수 없겠죠?!

그렇다면, jest.config.js 파일의 이름이 어떻게 바뀌면 좋을까요?!

네! jest.config.mjs로 이름을 변경하고 다시 한 번 시도해 보세요!^^

 

1

park tae young

해결했습니다 감사합니다 ^^

fetchBoardsOfMine, fetchBoardsCountOfMine 에러 문의드립니다

0

40

1

댓글 기능 구현 중 질문드립니다.

0

66

1

쿠폰코드 발급

0

136

2

example 서버 플레이그라운드, API 접속 모두 안됩니다.

0

87

2

문의드립니다!! ㅠㅠ

0

102

2

graphql 백엔드 서버가 포폴용 빼곤 접속이 안됩니다.

0

78

2

_app.js 작성 이후로 에러가 발생하네요

0

95

2

학습자료

0

71

2

학습자료가 안열립니다.

0

51

2

플레이 그라운드 퀴즈 문제 질문이 있습니다.

0

61

0

기존강의 구매자, 업데이트 끝인가요?

0

110

3

업데이트 버전 수강

0

89

2

완벽한 프론트엔드

0

136

2

나만의 쇼핑몰 샘플 페이지 접속 확인부탁드립니다.

0

84

1

graphql 접속이 안됩니다.

0

101

2

const, let 사용 질문 드립니다.

0

70

2

싸이월드 만들기 1탄 피드백 부탁드립니다.

0

122

2

회원가입 과제 피드백 부탁드립니다.

0

81

2

styled.span / styled.input "CSS 자동완성"

0

47

1

쿠폰 발급 관련

0

167

2

서버 502 error

0

247

2

쿠폰 다시 부탁드려도 될가여?

0

140

2

a태그 패딩했을때 왜 크기가 줄어들지 않고 늘어나나요

0

185

2

2분 44초 질문

0

132

3