RequireJS 优化器:排除特定库

RequireJS Optimizer: Exclude specific libs

我的构建过程将每个应用程序脚本和供应商库合并到一个 .min.js 文件中。现在,假设这个供应商库之一是 jQuery。我的应用程序将在已使用 jQuery 的环境中 运行。所以我不需要在我的构建中包含 jQuery。但是,在我的应用程序原型(开发环境)中我仍然需要它,因此只能在构建过程中将其删除。

因此,在构建我的 .min.js 文件时,我需要排除 jQuery,但应用程序应该仍然可以正常工作,依赖项也应该可以正确解析。

我的 g运行t-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'
        }
    }
}

是否有预定义的方法来解决它?或者任何解决方法?

这可以使用优化器中的 empty 选项来完成。有关详细信息,请参阅 the docs