본문 바로가기
개발/Node.js

[Node.js] socket.io require 에러 해결법

by 윤호 2021. 1. 22.

채팅 서버를 만들기위해 socket.io 모듈을 설치하고 require로 모듈을 불러왔는데, 실행이 되지 않았습니다.

 

SyntaxError: Unexpected identifier

 

문법 오류란 문구 말곤 별다른 에러 문구가 없어서 헤매다가 공식 문서를 보니 Node.js에서는 import를 사용하여 모듈을 불러올 수 있다고합니다. 아무래도 버전이 업그레이드 되면서 기존의 require을 사용하는 방법이 사라진 것 같았습니다.

 

(기존 자바스크립트가 지원하던 require과 다르게 import 는 ES6의 사양으로 모듈을 불러오는 방법으로, 후자를 사용하도록 업데이트가 된거 같습니다.)

해결

socket.io 1.7.x 버전을 사용하면 require로 모듈을 불러올 수 있습니다.

% npm install socket.io@1.7.4 명령어로 1.7.4 버전 socket.io를 설치할 수 있습니다.

참고로 기존 모듈을 삭제하는 명령어는 % npm uninstall <모듈명> 입니다.

 

Reference

 

댓글