webpack优化构建速度示例-合理配置loader的include exclude:

实际上,babel-loader 在 Webpack 配置中默认并不包含 exclude 和 include 选项的默认值,通常,为了优化构建性能,开发者会显式地设置 exclude 和 include 选项,以便 babel-loader 只处理必要的文件。

c 复制代码
src/index.js
import $ from 'jquery'

$(document).ready(() => {
    $('body').css({
        width: '100%',
        height: '100%',
        'background-color': 'red'
    })
})

优化前

c 复制代码
webpack.config.js
const config = {
    entry: './src/index.js',
    output: {
        filename: 'main.js'
    },
  mode: 'development',
  module: {
    rules: [  
      {  
        test: /\.js$/, // 使用正则匹配以.js结尾的文件  
        use: {  
          loader: 'babel-loader', // 使用babel-loader  
          options: {  
            // ... Babel的配置选项 ...  
          },  
        },  
      },  
    ], 
  }
}

module.exports = config;

优化后

c 复制代码
webpack.config.js
const config = {
    entry: './src/index.js',
    output: {
        filename: 'main.js'
    },
  mode: 'development',
  module: {
    rules: [  
      {  
        test: /\.js$/, // 使用正则匹配以.js结尾的文件  
        exclude: /node_modules/, // 排除node_modules目录中的文件  
        include: /src/, // 只包括src目录中的文件  
        use: {  
          loader: 'babel-loader', // 使用babel-loader  
          options: {  
            // ... Babel的配置选项 ...  
          },  
        },  
      },  
    ], 
  }
}

module.exports = config;

可以看到配置后节省了1184-814=340ms

相关推荐
赖龙4 小时前
pnpm vs npm
前端·npm·node.js
学如逆水,不进则退5 小时前
在线免费音频剪辑:NBTools 可视化波形裁剪 MP3/WAV,本地处理免上传
前端·音视频
Mh6 小时前
虚拟滚动真的比普通滚动性能更好吗?
前端·javascript·性能优化
pe7er6 小时前
React + Ant Design 中的 IME (输入法合成)安全输入组件
前端
Super 含6 小时前
Android 启动优化(二):TTID、TTFD 与 Macrobenchmark 启动性能测量
前端
Python私教6 小时前
别急着加 llms.txt:企业官网面向 AI 搜索的工程清单
前端·人工智能·seo
东方小月7 小时前
从零开发一个 Coding Agent(十三):实现安全的 read 文件读取工具
前端·人工智能·全栈
东方小月7 小时前
从零开发一个 Coding Agent(十二):实现版本化 JSONL 与真实 CLI 入口
前端·设计模式·前端框架
FL16238631298 小时前
室内易燃物识别易燃评估室内易燃程度识别分割数据集labelme格式1015张85类别
java·服务器·前端
用户059540174468 小时前
把 AI 长期记忆去重测试从 20 分钟压到 40 秒,重复率从 18% 干到 1.5%
前端·css