从SplitChunksPlugin中排除某些文件的导入

时间:2019-10-22 08:08:35

标签: javascript webpack webpack-encore

我使用 SplitChunksPlugin 将常见的导入捆绑到名为 core.js 的文件中 现在,对于第三方,我有一个javascript应用程序,该应用程序是通过端点交付的,并且还捆绑了相同的配置文件。 我该如何配置 SplitChunksPlugin ,以便仅针对该特定的javascript文件,导入的模块不会提取到公共块中,而是包含在同一输出文件中? 现在,导入的React,ReactDOM和其他供应商最终出现在通用的 core.js 块中。

我已经尝试提供可调用的 test ,但这没有用。它只是停用了所有模块的拆分块:

test(module, chunk) {
  return !RegExp('/Base/pages/searchWidget/').test(module.resource);
}

我的 SplitChunksPlugin 配置为:

webpackConfig.optimization.splitChunks = {
  chunks: 'initial',
  name: 'core',
  filename: Encore.isProduction() ? 'js/core-[hash:8].js' : 'js/core.js',
  minChunks: 3,
  cacheGroups: {
    default: false, // disable default cache groups
    async: {
      chunks: 'async',
      name: false,
      reuseExistingChunk: false,
      test: /\.js$/,
    },
  }

0 个答案:

没有答案