当前位置: 首页 > 知识库问答 >
问题:

WebPack4与代码拆分

鲜于星波
2023-03-14
entry: {
        main: './src/app.js',
        vendor: ['babel-polyfill','react','react-dom',"jquery","bootstrap"]
},

new webpack.HashedModuleIdsPlugin({
            // Options...
}),
new webpack.optimize.CommonsChunkPlugin({
            name: 'vendor'
}),
new webpack.optimize.CommonsChunkPlugin({
            name: 'manifest'
})

下面是WebPack4配置代码:

entry: {
        main: './src/app.js'
    },
    optimization: {
        splitChunks: {
            cacheGroups: {
                default: false,
                commons: {
                    test: /[\\/]node_modules[\\/]/,
                    name: "vendor",
                    chunks: "initial"
                }
            }
        }
    },

新的配置代码从项目中使用的节点模块中获取所有代码。但我只希望拆分供应商库(我在enrtry配置部分定义),而不希望拆分node_modules中的所有代码。

在本例中:“babel-polyfill”,“react”,“react-dom”,“jquery”,“bootstrap”

entry: {
        main: './src/app.js',
        vendor: ['babel-polyfill','react','react-dom',"jquery","bootstrap"]
},

共有1个答案

阎德宇
2023-03-14

其实我问了一个很相似的问题。

以下是如何仅为必需的包创建供应商捆绑包:

// mode: "development || "production",
entry: {
  vendor: ['babel-polyfill', 'react', 'react-dom', 'redux'],
  main: './client.js',
},
output: {
  path: path.join(__dirname, '../dist'),
  filename: '[name].[chunkhash:8].bundle.js',
  chunkFilename: '[name].[chunkhash:8].bundle.js',
  publicPath: '/',
},
optimization: {
  splitChunks: {
    cacheGroups: {
      vendor: {
        chunks: 'initial',
        name: 'vendor',
        test: 'vendor',
        enforce: true
      },
    }
  },
  runtimeChunk: true
}

您不需要hashedmoduleidsplugin运行时块将自动生成。

 类似资料:
  • 本文向大家介绍webpack4 SplitChunks实现代码分隔详解,包括了webpack4 SplitChunks实现代码分隔详解的使用技巧和注意事项,需要的朋友参考一下 代码均放在 git仓库 Webpack 4给我们带来了一些改变。包括更快的打包速度,引入了SplitChunksPlugin插件来取代(之前版本里的)CommonsChunksPlugin插件。在这篇文章中,你将学习如何分割

  • 如果可能的话,我如何用更少的代码将下面所示代码的结尾部分移到另一行或修改文本,以实现所需的结果。我键入了以下代码: 我试图实现的是显示以下数据:-仅显示,仅显示Dakota Spitfire和Hurricane或Dakota和Spitfire或Dakota和两个Spitfire,如果它们显示在数据表明细表中,则完整代码如下。需要编辑的是从Southport=开始的行: 当我运行代码时,我得到以下回

  • 老项目遗留了一些代码,VUE页面里面的代码太长了 想把TS代码拆分出来,请问最佳实践是什么样子的? 旧代码:

  • 本文向大家介绍React如何进行代码拆分?拆分的原则是什么?相关面试题,主要包含被问及React如何进行代码拆分?拆分的原则是什么?时的应答技巧和注意事项,需要的朋友参考一下 这里我认为react的拆分前提是代码目录设计规范,模块定义规范,代码设计规范,符合程序设计的一般原则,例如高内聚、低耦合等等。 在我们的react项目中: 1、在 api 层面我们单独封装,对外暴露http请求的结果。 2、

  • 问题内容: 我正在使用Google Places API搜索附近的地方。但是,我只想要特定类型的地方。当我仅指定一种类型时,代码(如下所示)有效,但是当我添加第二种代码时,我的代码运行并迅速在此行上给我一个EXC_BAD_INSTRUCTION(code = EXC_I386_INVOP,subcode = 0x0)错误: `session.dataTaskWithURL(url!, comple

  • 问题内容: PHP告诉我不建议使用split,我应该使用哪种替代方法? 问题答案: 是另一种选择。但是,如果您打算通过 正则表达式 进行拆分,则可以选择替代方法 。