2014-11-18 2 views
0

시간을로드하기 위해 모든 AMD 모듈 종속성을 미리 정의하는 데 관심이 있습니다. 이것은 현재 require.js가 의존성을 해결하기 전에 모듈 파일을로드해야하기 때문입니다. 다음은 의미를 보여주는 그림입니다. enter image description hereRequireJS 구성에서 AMD 모듈 종속성 사전 정의

require.js로 어떤 방법을 사용할 수 있습니까? 나는 당신이 shimmed 모듈에 대한 의존성을 정의 할 수 있다는 것을 알고 있지만, 자신의 맞춤형 AMD 모듈을 위해 이것을 할 수 있습니까?

+2

r.js로 프로젝트를 최적화하지 않습니까? 종속성을 하나의 파일로 묶어서 언급 한로드 문제를 처리합니다. – kryger

+0

Kryger가 맞을지도 모르지만, 꼭 필요한 경우에는 deps 구성이 필요합니다 ([ref] (http://requirejs.org/docs/api.html#config-deps)). –

답변

1

원하는 작업을 수행 할 수있는 RequireJS에 전달하는 구성에 넣을 수있는 것을 찾고 있습니다. define을 호출하는 모듈에는 shim과 유사한 아날로그가 없습니다. 그러나 무엇 할 사용자의 구성에 deps 옵션을 추가 할 수 있습니다 :이 즉시 모듈과 종속성을로드 시작 RequireJS을 말할 것이다

deps: ['module', 'dep1', 'dep2', 'dep3'] 

. 이 목록을 직접 관리해야하지만 shim도 마찬가지입니다. IT 및 종속성을 모두 포함하는 하나의 번들로 module을 구축 r.js를 사용

그렇지 않으면, 당신은 kryger이 comment에서 무엇을 제안 할 수 있습니다. module이로드 될 때마다 모든 종속성이 동시에로드됩니다. 이것은 deps을 사용하는 것보다 효율적이지만, 의존성을 스스로로드해야 할 경우 약간을 더 복잡하게 만들 수 있습니다. 이 모듈이있는 RequireJS에 알기 위해서는 런타임 옵션 bundles을 사용해야합니다. deps처럼이 목록을 직접 관리해야합니다.

+0

URL에 따라'module'이 가변적이라면 어떻게 될까요? 나는 deps를 설정하기 위해 대규모 스위치 케이스를 가질 수 있다고 생각한다. ... – Miguel

+1

'deps'는'require ([module ','dep1 ','dep2 ','dep3 '])'를 바로 쓰는 설탕이다. 'require.config'를 호출 한 후. 그래서 여러분은'deps'에 대해서 잊어 버리고 적당한 모듈 세트로'require'를 호출하는 스위치를 갖을 수 있습니다. – Louis

+0

그래, 내 문제에 대한 완벽한 해결책으로 보이지 않지만 콜백없이 호출을 요구하거나 r.js를 사용하면 둘 다 작동 할 수있다. – Miguel