我的构建过程将每个应用程序脚本和供应商库组合到一个 .min.js 文件中。现在,假设这个供应商库之一是 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'
}
}
}
有预定义的方法来解决它吗?或任何解决方法的想法?