발생일: 2013.04.02 문제: Require.js 에는 AMD를 지원하지 않는 다른 라이브러리나 객체를 모듈로 정의하는 옵션이 있다.바로 shim 옵션이고, 해당 가이드 문서를 아래 링크에서 찾았었다. https://github.com/jrburke/requirejs/wiki/Upgrading-to-RequireJS-2.0#wiki-shim 난 처음 사용할 때 가이드를 보고도 한참 이해가 되지 않았었다.설정을 하고도 자꾸 모듈을 찾지 못한다는 오류가 나서 한참을 삽질했던 기억이 있다. 예전 메모를 정리하다가 혹시 도움이 될까 남겨둔다. 해결책: 사실 위 가이드는 2.0으로 버전업하면서 만들어진 가이드라 현재 버전 가이드랑 약간 다르다.최신 가이드는 아래 링크에서 찾아볼 수 있다. http://req..
발생일: 2013.03.07 문제: 며칠 전 M 과장님이 영어사전 크롬 익스텐션의 신기한 버그를 하나 알려줬다. 과장님이 개발하고 있는 페이지에서 require.js 를 사용하고 있는데,영어사전 익스텐션이 설치되어 있는 경우엔 메인 코드가 두 번 호출된다는 거다. 익스텐션에서도 require.js 를 사용하고 있긴 한데,..require.js 가 두 번 로드되면서 뭔가 충돌이 일어난 것 같다. 정확한 원인이 뭘까? 해결책: 먼저, require.js 가 메인 코드를 가져와 실행하는 과정은 다음과 같다. 1. require.js 가 로드되면, 페이지 내에서 require.js 에서 코드를 초기화할 때,전역 변수인 `requirejs, require, define` 가 이미 존재할 경우 중복 정의하지 않기 ..
발생일: 2012.10.27 문제: 정말 오랜만에 한가한 주말이다.오후부터, 한참을 미뤄뒀던 네이버 영어사전 크롬 익스텐션 리팩토링 작업을 시작했다. 처음 만들었을 때엔 의존성을 해결하기 위해 직접 프레임워크를 만들었었는데,문서도 없고 내멋대로 만든 거라 다른 개발자들이 참여하기도 어려운 것 같았다. 그래서 이번엔 RequireJS를 사용해보려고 한다. 백그라운드 코드부터 작업하기 시작했고, 아무 매끄럽게 잘 적용할 수 있었다.헌데, 컨텐트 스크립트에 적용하려고 하니 좀 문제가 있다. 먼저, 보안 이슈 때문에 파일이 로드되지 않았고,다음엔 스크립트를 로드해와도 제대로 로드되지 않았다. 어떻게 해결하면 될까? 해결책: 컨텐트 스크립트에서 RequireJS를 사용하는 데엔 두 가지 문제가 있었다. 1. 익스..