私のビルド プロセスでは、すべてのアプリケーション スクリプトとベンダー ライブラリを 1 つの .min.js ファイルに結合します。ここで、このベンダー ライブラリの 1 つが jQuery であるとしましょう。私のアプリケーションは、jQuery が既に使用されている環境で実行されます。したがって、ビルドに jQuery を含める必要はありません。ただし、私のアプリケーション プロトタイプ (開発環境) ではまだ必要なので、ビルド プロセスでしか削除できません。
そのため、.min.js ファイルをビルドするときに jQuery を除外する必要がありますが、アプリケーションは引き続き機能し、依存関係は正しく解決されるはずです。
私の grunt-contrib-requirejs ビルドは次のようになります。
/**
* JavaScript/RequireJS compilation/compression
* with almond
*/
requirejs: {
prod: {
options: {
/**
* Use Uglify2 with
* compressed output
* and generate a .map-file
*/
optimize: 'uglify2',
// needs to be false if preserveLicense is true
generateSourceMaps: false,
preserveLicenseComments: true,
uglify2: {
output: {
beautify: false
}
},
/**
* Generate the output
* as a single file to the build folder
*/
name: '../../<%= project.almond %>',
baseUrl: '<%= project.scripts %>',
mainConfigFile: '<%= project.scripts %>/main.js',
include: 'main.js',
out: '<%= project.dist.web %>/js/app.min.js'
}
}
}
それを解決するための事前定義された方法はありますか?または回避策のアイデアはありますか?