2012-07-03 3 views
1

외부 js 라이브러리를 사용하고 있습니다.이 모듈은 AMD 모듈이 아니므로 shim을 사용합니다. 이 예제에서 bootstrap.js를 사용합시다. bootstrap.js에 jQuery가 필요합니다.require-jquery와 jquery의 차이점 (사용법)

requirejs.config({ 
paths : { 
    jquery : "lib/jquery", 
    bootstrap : "lib/bootstrap", 
}, 

shim : { 
    "bootstrap" : [ "jquery" ] 
} 
}); 

또한 require-jquery가 필요합니다. 즉, 두 개의 jQuery 파일을 갖게됩니다. 하나의 표준과 require-jquery.

나는이

paths : { 
    jquery : "jquery-require" 
    bootstrap : "lib/bootstrap", 
}, 

을 할 경우 내가 jQuery를 문제 catch되지 않은 형식 오류를 얻을 것이다 : 정의되지 않은

의 특성 'FN'을 읽을 수 없습니다 당신이 날이를 사용하는 방법을 알아내는 데 도움이 있을까요?

+0

죄송합니다. 미안하지만, 보통 그냥 고마워. :) – pethel

+0

궁금한데 왜 당신은 jquery와 일반 jquery가 둘 다 필요할까요? require-jquery는 jquery뿐 아니라 require lib 자체도 번들로 제공합니다 (jquery에 약간의 비틀기가 있었지만 한 번은 jquery에 약간의 수정이있었습니다. 어쨌든 한 가지 시도해보십시오 : 번들 된 버전을 사용할 때 jquery에 경로를 매핑하지 마십시오 ... 이미로드되어 있어야하므로 일반 'jquery'이름으로 등록됩니다. – busticated

답변

1

"jquery-require"를 사용할 필요가 없습니다. 첫 번째 구성 (jquery와 shim 사용)이면 충분합니다.

AFAIK jquery-require는 이전 버전의 requirejs (2.0 이전)에 대해 완료된 require + jquery의 번들입니다.

최신 버전의 Require 또는 jQuery에는 특별한 구성이 필요하지 않습니다. 예를 들어, jQuery가 발견되면 define을 사용하여 jQuery 전역을 내 보냅니다 (https://github.com/jquery/jquery/blob/master/src/exports.js 참조).