2013-01-07 1 views
3

이 내 설정이다 '], 꽤 많은 표준 방법, 그 밖의 모든 것은 내 개인 CDN에서로드되지만 requirejs는 개인 CDN에서도 jqueryui를로드하려고 시도합니다. jqueryui가 로컬 모듈이라고 생각하는 것 같습니다. 무엇이 잘못되었는지 확실하지 않습니다. 또한 requirejs-rails gem을 require.js의 래퍼로 사용하고 있습니다.내가 CDN과 jqueryui로드 requirejs를 사용하는 것을 시도하고있다 CDN

+0

확실하지 않지만 jqueryui 경로에 '.js'를 드롭해야한다고 생각합니다. – asgoth

+0

requirejs-rails 페이지와 실제 requirejs 문서에 관한 '.js'가 포함 된 문서와 혼합 문서를 사용 해보았습니다. 문제가 지속됩니다. 그래도 고마워. – user1323136

+0

이상한, [여기] (http://jsfiddle.net/asgoth/tHkHw/) 다른 CDN의 모든 것을로드하고 아무런 문제가 없습니다. jquery의 경로는 무엇입니까? "http : //private.cdn/path/jquery.min.js"? – asgoth

답변

3

CDN 콘텐츠와 같은 원격 모듈 참조가있는 프로젝트에서 RequireJS 최적화 프로그램 (r.js)을 실행하는 경우 빌드 구성에서 empty: 체계를 사용해야합니다. documentation에서

:

당신은 콘텐츠 전송 네트워크 (CDN) 또는 다른 도메인의 다른 서버에서로드 할 스크립트가있을 수 있습니다. [...] 그러나 빌드에 해당 리소스를 포함하지 않으려는 경우가 더 많습니다. 스크립트에 종속성이 없거나 종속성을 포함시키지 않거나 다른 방식으로 포함시키지 않으려면 경로 구성에서 특별한 'empty :'체계를 사용하여 파일을 건너 뛸 수 있습니다. 최적화.

그래서 빌드 프로파일에 지정하려고 여기 requirejs 레일의

paths: { 
    jqueryui: "empty:" 
} 
+0

감사합니다!, requirejs-rails gem을 사용하고 있습니다. js config 옵션으로 변환되는 yml 파일 구성이 필요합니다. 그들의 문서에 따르면, 그것은 경로에 URL을 넣을 때마다 "empty :"를 내야한다고 가정합니다.하지만 나는 그렇지 않다는 것을 짐작하고 있습니다. 보석은 최근에 업데이트되었으며, 저는 이전 버전을 시도 할 것입니다. 그러나 그렇습니다 당신은 바로 여기 있습니다, 그 빌드는 그 문제입니다. – user1323136

+0

그냥 확인, 이전 버전의 보석 잘 작동합니다! 그것의 보석 문제는 보석에 대한 버그를 열 것입니다. – user1323136

+1

정말 이것을 이해하지 못합니다. jQueryUI의 URL을 경로에 넣지 않으면 어디에 놓아야합니까? '비어있는'경우 앱을 가져올 위치는 어떻게 될까요? – oligofren

1

저자. 이것은 구성에서 CDN URL 대신에 empty:을 자동으로 대체해야하는 r.js의 회귀 인 것으로 보입니다. rsj2.0 이상에서 jrburke/r.js#163이 릴리스 된 경우 requirejs-rails의 명시 적 대체 인 empty:이 제거되었습니다.

관련 문제