jQeury 'x' is not a function에러 발생

국물빌런·2020년 2월 10일
0

에러메시지

이걸로 몇시간을 헤멧는지 모르겠다..
문제 상황은 코드로 배우는 스프링 웹 프로젝트 책 408~409페이지 자바스크립트 부분이었다.
실제 코드는 책 펴서 보도록 하고 코드에 대해 간략히 설명하자면
댓글 삭제기능을 reply.js에 펑션을 구현하고 jsp페이지에서 해당 펑션을 호출하는 부분이었다.
나는 분명히 reply.js에 remove펑션을 구현을 했는데 jsp페이지에서 계속 저 위의 에러가 떨어지는것 아닌가..거의 1시간동안 이거 왜이러나 하고 검색을 열심히 했다.
별별 정보가 다 나오더라..무슨 이름이 중복이어쩌고..
this가 어쩌고..
id랑 name이 같으면 안된다는데 이건 또 무슨말..
결국 구멍가게 코딩단 카페에서 해결책을 찾았다.

일단 내가 해결한 방법을 기준으로 말하자면 브라우저 캐싱문제였다.
일단 저 에러가 떳고 실제 함수구현이 정확히 되어있다고 생각될때는
크롬 디버그모드에서 reply.js를 직접 열어보아야한다.
크롬에서 열어보니 아니나 다를까 내가 구현한 remove펑션이 없다..
분명 로컬 파일에는 remove펑션이 있는데 이 크롬놈이 내 remove펑션을 어디다 팔아 먹었는지 없어져있다.
그럼 뻔하다. 캐싱문제다.
브라우저가 reply.js파일을 어딘가에 캐싱해서 실제 reply.js파일을 가져온게 아니었나보다..
해결법은?
캐시 클리어 해주면 다시 받아온다..
아마 이것 이외에도 앞으로 캐싱때문에 고생을 많이 할 것같은 느낌이 든다.
뭔가 소스의 함수를 못찾거나 할때는 디버그모드 네트워크 파일에서 로컬의 소스와 동일한 소스를 가져오는지 꼭 확인하는 습관을 가지자

profile
국물을 달라

0개의 댓글