2014-09-04 3 views
1

나는 2 개 requirejs 모듈이 포함 된 이물 패키지가 - 그래서 우리는이 같은 끝낼바우어 + RequireJS 여러 파일

- src 
- a.js <- this is the primary package/amd module which lists b.js as a module dependency 
- b.js 

을 :

// a.js 
define(['./b'], function(b){}) 

문제는 그 나는이 패키지를 추가 할 때 별도 프로젝트의 의존성으로서 require.js 설정은 모듈 a의 경로 만 성공적으로 해결할 것입니다.

상위 프로젝트의 rjs packages 키를 수동으로 구성하지 않고 여러 rjs 모듈로 구성된 bower 패키지를 유지 관리하는 가장 좋은 솔루션은 무엇입니까?

내가 bower.json에서 내 rjs 구성을 성공적으로 빌드 할 수있는 지점에 대해 알아 보려합니다. grower bower 및 기타 npm 빌드 모듈에서 볼 수 있습니다.

패키지의 여러 파일로 정의 할 수있는 옵션이 있어야하므로이 부분은 책임자의 책임이라고 생각합니다.

또한 모듈을 하나의 파일로 연결하는 방법이있을 수 있지만 그렇게하는 방법은 확실하지 않습니다.

답변

0

나는 그것을 알아 냈다. 해결책은 상기 파일을 연결하여 하나의 베어 패키지를 만드는 것이다.

// This will build all 3 files into a single concatenated pkg 
// 'efficient-frontier', 'everestjs', 'sem-campaign' 
// nmp install -g rjs 
// r.js -o require.build.js optimize=none 
// Below is a file in my root named 'require.build.js' 
({ 
    baseUrl: "", 
    paths: { 
     everestjs: './vendor/bower/everestjs/index', 
     requirejs: './vendor/bower/requirejs/require', 
     'jquery.cookie': './vendor/bower/jquery.cookie/jquery.cookie', 
     'sem-campaign': 'dist/shared/sem-campaign', 
     'efficient-frontier': 'dist/shared/efficient-frontier', 
     jquery: './vendor/bower/jquery/jquery' 
    }, 
    // Exclude the packages you expect to be included in the parent project 
    exclude: ['jquery','jquery.cookie'], 
    name: "sem-campaign", 
    out: "./dist/sem-campaign.js" 
}) 

마지막 패키지 보어는 3 개의 연결된 rjs 모듈입니다. 이 예제의 패키지는 sem-campaign입니다.

관련 문제