리액트 실행 시 발생한 Syntax에러, 알고보니 node 버전 문제

리액트 기초공부를 하면서 예제코드를 따라하는데, 실행시켜보기 위해 터미널에 'yarn start'를 입력했더니

SyntaxError: missing ) after argument list
...

라는 에러가 났다. 어제까지만 해도 잘만 실행되던 코드가..?


구글링해봤더니 맞춤법, 연산자 누락 등으로 함수를 호출하는 데 문제가 생긴 것 이라고 한다.

그런데 오류가 발생한 코드는 /node_modules 폴더에 있던 것으로 손 하자 대지 않은 코드..!!

오늘 새로 작성한 코드를 다 지우고 어제코드로 돌려봐도 안됨!


이리저리 수정하다보니 에러메시지에 node 버전에 대한 언급이 있어서 (8버전 이상만 지원) 확인해보니 6.10.1 버전..!

어제 분명히 12버전으로 올리고 실행도 했었는데..?
답답...


왜인지는 모르겠으나 버전을 올리기로 마음먹고 버전업을 했는데도 (13으로) 안 되었다..


그래서 node를 다 삭제하고 재설치하기로 결정

https://gomugom.github.io/how-to-remove-node-from-macos/
위 링크 참고!

그런데도 계속 실행이 안됐는데(버전도 그대로), 모든 터미널을 종료하고 다시 실행하니까 노드버전이 13으로 뜨고 리액트실행도 잘 되었다.

터미널을 재실행해야 제대로 적용되나보다.


* 3줄요약

손도 안 댄 코드에서 SyntaxError 발생
Node 삭제 후 최신버전으로 재설치
터미널 재실행 -> 해결☀

Node 버전관리를 잘합시다...😢


(+) nvm 을 이용한 node 버전관리

$nvm list
$nvm use v0.0.0
$node -v
'nvm use'를 통해 nvm 버전을 바꿀 수 있다!
'$nvm uninstall v6.10.1' 하면 제거될 것 같은데.. .안된다. 더 알아봐야겠다.
일단 버전을 바꾼 것 만으로 경축

댓글

이 블로그의 인기 게시물

[MFC] LNK2001 외부 기호를 확인할 수 없습니다.

[CG] 파일입출력 오류 / 해결

[Darkflow] 두달간 사용하며 알게된 것들