我有一个 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;
这就是它现在生成的内容:
如果 (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/