webpack优化构建速度示例-resolve.extensions:

当项目不仅仅包含.js或.json文件,还包含其他类型文件(如.ts、.vue、.css)作为模块时,配置resolve.extensions可以不必要的文件搜索提高性能。

c 复制代码
src/index.ts
import { someFuction } from './module'

someFuction()
c 复制代码
src/module.ts

import {otherSomeFuction} from './othermodule'


export const someFuction = otherSomeFuction
c 复制代码
src/othermodule.ts
export const otherSomeFuction = () => {
    console.log('otherSomeFuction...')
}

优化前

c 复制代码
webpack.config.js

const config = {
    entry: './src/index.ts',
    output: {
        filename: 'main.js'
    },
  mode: 'development',
  resolve: {  
    extensions: [ '.js', '.json', '.jsx', '.tsx', '.ts'], 
  },  
  module: {
    rules: [
      {
        test: /\.ts$/,
        loader: 'ts-loader'
      }
    ]
  }
}

module.exports = config;

优化后

c 复制代码
webpack.config.js

const config = {
    entry: './src/index.ts',
    output: {
        filename: 'main.js'
    },
  mode: 'development',
  resolve: {  
    extensions: [ '.ts', '.tsx', '.js', '.jsx', '.json'], 
  },  
  module: {
    rules: [
      {
        test: /\.ts$/,
        loader: 'ts-loader'
      }
    ]
  }
}

module.exports = config;

可以看到优化resolve.extensions的顺序,简单的三个小模块的打包就带来了1508-1467=41ms的性能提升

相关推荐
小王码农记2 小时前
CSS中自定义属性函数var()
前端·css·vue.js
泉城老铁3 小时前
springboot+vue 如何实现海康摄像头喊话功能
前端·vue.js·后端
一 乐3 小时前
美食推荐|基于springboot+vue的美食分享系统设计与实现(源码+数据库+文档)
前端·数据库·vue.js·spring boot·后端·美食
WX-bisheyuange3 小时前
基于Spring Boot的电影院购票系统设计与实现
前端·javascript·vue.js·毕业设计
翔云 OCR API3 小时前
开发者接口之发票查验接口技术解析-Node.js调用示例
node.js
通义灵码3 小时前
用 Qoder 加速前端巨石应用的架构演进
前端·人工智能·架构·qoder
一水鉴天3 小时前
整体设计 定稿 之21 拼语言表述体系之3 dashboard.html V5(codebuddy)
前端·人工智能·架构
前端fighter3 小时前
全栈项目:宠物用品购物系统及后台管理
前端·vue.js·后端
吃炒鸡蛋4 小时前
反射更新字段
java·服务器·前端
子洋4 小时前
LLM 原理 - 输入预处理
前端·人工智能·后端