가끔 이런 에러 메시지를 보게 될 것이다.
이러한 에러는 두가지의 경우에서 볼수 있다.
1. 콜백이 여러번 들어가있는 경우(콜백 처리가 잘 못된 경우)
2. 모듈의 버전이 잘 못된 경우(버전이 잘 못됬다는 것은 꼭 하위버전을 쓰고있어서 발생되는 경우는 아니다.)
사실 2번일 경우가 가장 난간한 부분이다(코드적으로 이상이 없기 때문에 찾기가 매우 힘듬. 주로 다른 tool과 연동을 하게 될때 나타날 가능성이 크다.) 왜냐하면 cocos2d-x와 node.js가 socketio통신을 할 경우 node.js버전이 1.0 버전이 넘어가는 위와같은 에러가 발생한다.
node 버전 확인하기
명령 프롬프트 창에서 다음과 같이(node) 버전을 확인할 수 있다.
node -v
기존의 모듈 삭제
npm패키지의 uninstall을 하여 모듈을 삭제 할수있다.
npm uninstall "modulename"
모듈 설치
npm패키지의 install을 이용하여 모듈을 설치할수 있다
여기서 @를 붙여서 원하는 버전을 install을 하는데 따로 버전을 명시하지 않으면 최신 버전을 install
npm install "ModuleName"@"Version" ( npm install socket.io@1.1.1 이렇게 하면 socket.io모듈의 1.1.1버전을 다운로드를 하게 된다.
댓글
댓글 쓰기