FrontEngineer JungBam
next.js에서 web API를 사용하기. (ReferenceError : regeneratorRuntime is not defined) 본문
개발일지
next.js에서 web API를 사용하기. (ReferenceError : regeneratorRuntime is not defined)
정밤톨 2023. 8. 20. 23:30
음성 인식을 위해 비동기적 처리가 되어있는 패키지를 사용하려고 하던 중 만난 에러
아래의 에러메세지에서 알 수 있듯이 원인은 regeneratorRuntime을 찾지 못하는 것인데 먼저 이 regeneratorRuntime은 어떤 친구인지부터 알아보자.
먼저, async/await은 비동기를 처리하는 것은 다들 알고 있을것이다.(모른다면 이전 글에서 찾아보면 정리한 글이 있다.)
하지만 이 async/await은 ES6 문법, 비교적 최신의 문법이고 구형 브라우저나 이전의 코드에서는 동작하지 않게 될 것 이다. 이를 해결하기 위한 것이 바로 Babel에서 런타임에서 실행시키는 regeneratorRuntime 이라는 친구인 것이다. 왜인지를 아는 것이 중요한 것은 어느 부분을 수정해서 에러를 잡을 수 있는지를 캐치할 수 있기 때문!
먼저, 위의 두 패키지를 devDependencies에 추가해준다.
그리고 프로젝트 root경로에 .babelrc 를 만들고 위와 같이 코드를 추가 해준다. 그럼 당장에 에러는 다 해결이 될 것이다.
그런데, 혹시 next/font를 사용하고 있다면 그것은 또 다른 에러를 불러온다.(아래의 그림과 같은 에러가 보인다면 Read more에 있는 url 주소로 들어가 보면 왜 발생하는지, 어떻게 해결하는지 나온다. :: next/font를 사용하던가 .babelrc를 사용하던가...)
반응형
'개발일지' 카테고리의 다른 글
sticky 속성을 이용한 사이드 바 만들기 (0) | 2023.08.25 |
---|---|
깃헙 액션으로 CI 파이프라인 설정하기 (0) | 2023.08.20 |
Sanity : Headless CMS(Content management System) (1) | 2023.07.31 |
간단하게 SSE 구현하기(프론트) (0) | 2023.07.29 |
에디터 라이브러리 선정 회의(티스토리 오픈 API) (0) | 2023.07.19 |
Comments