Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/webpack/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Webpack 网页包隐式块_Webpack_Chunks_Vendor_Code Splitting - Fatal编程技术网

Webpack 网页包隐式块

Webpack 网页包隐式块,webpack,chunks,vendor,code-splitting,Webpack,Chunks,Vendor,Code Splitting,我正在努力遵循隐含的通用供应商区块 我希望所有node\u模块都位于供应商区块中。 我有一个入口点(app),有几个子块。 我试过: ->从条目块(app.chunk.js)中删除所有节点模块,但将节点模块保留在子节点中 new webpack.optimize.CommonsChunkPlugin({ name: 'app', async: 'vendors', children: true, minChunks: module => module.context &am

我正在努力遵循隐含的通用供应商区块

我希望所有
node\u模块
都位于供应商区块中。 我有一个入口点(
app
),有几个子块。 我试过:

->从条目块(app.chunk.js)中删除所有节点模块,但将节点模块保留在子节点中

new webpack.optimize.CommonsChunkPlugin({
  name: 'app',
  async: 'vendors',
  children: true,
  minChunks: module => module.context && module.context.includes('node_modules'),
}),
->将节点_模块从所有子块中剥离,但不从应用程序中剥离

正在寻找实现这两种功能的方法(从所有区块中剥离节点_模块,并将它们放入vendors.chunk.js)

提前感谢,


PS:用于分析输出

我设法使其工作:

  new webpack.optimize.CommonsChunkPlugin({
    name: 'client',
    async: 'common',
    children: true,
    minChunks: (module, count) => {
      if (module.resource && (/^.*\.(css|scss)$/).test(module.resource)) {
        return false;
      }
      return count >= 3 && module.context && !module.context.includes('node_modules');
    },
  }),
  new webpack.optimize.CommonsChunkPlugin({
    name: 'client',
    children: true,
    minChunks: module => module.context && module.context.includes('node_modules'),
  }),
  new webpack.optimize.CommonsChunkPlugin({
    name: 'vendors',
    minChunks: module => module.context && module.context.includes('node_modules'),
  }),
第一次使用插件将代码库中使用了3次或更多次的模块提取到一个公共块中(节点_模块和css/SCS除外)

第二次使用插件将节点_模块从子块提取到条目块


第三次使用插件将节点模块从条目块提取到节点模块块。

我设法使其工作:

  new webpack.optimize.CommonsChunkPlugin({
    name: 'client',
    async: 'common',
    children: true,
    minChunks: (module, count) => {
      if (module.resource && (/^.*\.(css|scss)$/).test(module.resource)) {
        return false;
      }
      return count >= 3 && module.context && !module.context.includes('node_modules');
    },
  }),
  new webpack.optimize.CommonsChunkPlugin({
    name: 'client',
    children: true,
    minChunks: module => module.context && module.context.includes('node_modules'),
  }),
  new webpack.optimize.CommonsChunkPlugin({
    name: 'vendors',
    minChunks: module => module.context && module.context.includes('node_modules'),
  }),
第一次使用插件将代码库中使用了3次或更多次的模块提取到一个公共块中(节点_模块和css/SCS除外)

第二次使用插件将节点_模块从子块提取到条目块


第三次使用该插件将节点模块从条目块提取到节点模块块。

我也有同样的问题。非常惊讶,没有其他人发现这是一个问题。我在这里问了同样的问题:嘿,我设法满足了我的用例。这里有一个存储库:如果你能把这个写下来作为答案,那就太好了!我也有同样的问题。非常惊讶,没有其他人发现这是一个问题。我在这里问了同样的问题:嘿,我设法满足了我的用例。这里有一个存储库:如果你能把这个写下来作为答案,那就太好了!