javascript - Webpack 忽略生产构建的分块

标签 javascript webpack

我有一个 Webpack 配置,它正在拆分我的项目中的代码。我想做的是忽略分块并生成单个文件(如果它是生产版本)。

这是我的 webpack 配置文件: https://gist.github.com/alyn000r/5663c1036ab8e60695ba4db4e866df5f

这是我的index.js,因为它发生了分块:

if (typeof require.ensure !== `function`) require.ensure = (d, c) => c(require);  // mocha test runner polyfill

/**
 * require.ensure allows asynchronous chunk loading of the component, which means an extra HTTP hop to download the component,
 * in exchange of smaller initial download footprint.
 * - Use require.ensure for components that are least frequently used
 * - Use require.ensure for components that import libraries that are large in size
 */
export function lookup(componentName, callback) {
    switch (componentName) {
        // ============================== Components ===============================
        case 'dD':
            callback(require('./components/dD'));
            break;
        case 'eBL':
            callback(require('./components/eBL'));
            break;
        case 'essay':
            callback(require('./components/essay'));
            break;
        case 'hSM':
            require.ensure([], require => callback(require('./components/hSM')));
            break; 

这就是它现在生成的内容:

enter image description here

如果 (isProduction) 为 true,请帮助我生成单个文件

我尝试删除 CommonChunks Plugin 和 MinChunkSizePlugin if isProduction 但 block 仍然发生。我也尝试过删除

jsonpFunction: `jsonpFunction${jsonpPackageName}`,
    chunkFilename: `${packageName}/${packageName}-[id].js`,

但它仍然生成 0.0.js, 1.1.js, 2.2.js ....

请告诉我我错过了什么。谢谢您

最佳答案

您可以通过使用LimitChunkCountPlugin将最大块数限制为1来禁用代码分割。 :

plugins: [
    new webpack.optimize.LimitChunkCountPlugin({
        maxChunks: 1
    });
]

关于javascript - Webpack 忽略生产构建的分块,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39902251/

相关文章:

javascript - 如何重构 document.ready 函数以允许单击按钮?

javascript - 如何衡量 Angular.js 应用程序(而非 REST 服务)的性能

javascript - 使用 PHPExcel 从 Excel 加载动态数据

javascript - 使用 Nuxt JS 进行 Vuetify js 优化

Laravel Mix npm run dev 错误 ELIFECYCLE 在服务器上

javascript - Node.js Mongoose 类型错误 : set is not a function

javascript - 向特定的套接字 ID 发送私有(private)消息

reactjs - 匹配 webpack-dev-server HistoryApiFallback 中的根路由

angular - Visual Studio 2017 使用 webpack 和 angular 在单独的项目中共享 typescript 文件

javascript - 在 webpack 中更好的 TreeShaking 的正确方法是什么?