채팅 서버를 만들기위해 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
'개발 > Node.js' 카테고리의 다른 글
[Node.js] socket.io로 채팅 서버 만들기 2 - 메시지 보내기 (0) | 2021.02.01 |
---|---|
[Node.js] socket.io로 채팅 서버 만들기 1 - 웹 소켓 연결 (0) | 2021.01.25 |
[Node.js] 모듈화 방법 - exports, module.exports (0) | 2021.01.22 |
[Node.js] 패스포트 (passport) 사용법 - 로컬 인증 방식 (0) | 2021.01.21 |
[Node.js] 익스프레스로 웹 서버 만들기 2 - 자주 쓰이는 미들웨어 (0) | 2021.01.15 |
댓글