2016-05-20 6 views
0

Gulpを使用してRequireJSプロジェクトを正しくコンパイルする際に問題が発生しました。私がする必要があるのは、アプリケーションの実行に必要なファイルだけを含む単一の配布ファイルを作成することです。Gulp + RequireJSベンダーファイルを削除する

私たちのアプリケーションでは、主要な機能を別のreposに分けてモジュール化しています。だから私の作品を開発している間、私は、アプリケーションのすべてのプロジェクトに共通の角型および他の多くのベンダーライブラリを含むRequireJSを持っています。しかし、私が大きなアプリケーションに移動するときには、それらの依存関係がそのアプリケーションにも存在するため、これらのファイルは最終出力に必要なくなります(これらの余分なライブラリによって300Kを超える最終配布ファイルが作成される)。

私が必要とする依存関係のみを含む別のmain.js(gulp-main.jsという)ファイルを作成しようとしましたが、gulpプロセスを実行すると失敗します。エラーは出ませんが、プロジェクトが正常に構築されるために必要な依存関係が含まれていないため、失敗しているようです。以下は、RequireJS最適化メソッドに渡される設定オブジェクトです。

var config = { 
    baseUrl: 'app/', 
    mainConfigFile: 'app/main.js', 
    out: 'dist/app/output.js', 
    name: 'main' 
}; 

私は不要なベンダーのファイルを削除したり、単一ベンダーおよび単一の非ベンダーファイルにそれらを分割するか何ができるか上の任意のアイデアは本当にいただければ幸いです。私は既にモジュール配列オプションを使用してみましたが、それはすべてのスクリプトを含む単一のコンパイル済みのJSファイルではなく、定義された各項目に対して単一のファイルを作成するように見えるので、結果は出ません。

ありがとうございます。

答えて

0

最終出力にいくつかのファイルが必要ない場合。 gulp.srcを使用する場合は、この作品が、私はrequirejs.optimizeの呼び出しの出力を変更しようとしている

gulp.src(['./app/*.js', '!./node_modules/**']) // '!./vendor-libraries-dest to igonore' 
+0

" ! "

あなたの一気タスクのsrcの例を追加します。私が実行すると、それは私のメインファイルを必要とし、スタンドアロンアプリケーションとしてファイルを実行する必要があるすべてのファイルを含むライブラリを生成します。私はamdOptimizeを使用している例を見てきましたが、同じ問題があるように見えます。 –

関連する問題