代码分割

代码分割、动态导入


📋 学习目标

  • ✅ 理解 ESBuild 的代码分割能力
  • ✅ 掌握动态导入的使用
  • ✅ 了解代码分割配置
  • ✅ 理解分割策略

代码分割基础

启用代码分割

{
  entryPoints: ['src/index.js'],
  bundle: true,
  splitting: true,  // 启用代码分割
  format: 'esm',    // 必须使用 ESM
  outdir: 'dist'
}

动态导入

基础使用

// src/index.js
import('./module.js').then(module => {
  module.default()
})

路由分割

// 路由懒加载
const loadPage = async (page) => {
  const module = await import(`./pages/${page}.js`)
  return module.default
}

分割配置

输出命名

{
  entryNames: '[name]-[hash]',
  chunkNames: '[name]-[hash]'
}

分割策略

ESBuild 自动识别动态导入并分割代码。


相关链接


最后更新:2025


ESBuild 代码分割