esbuild中文文档-基础配置项(General options - Rebuild)

文章目录

哈喽,大家好!我是「励志前端小黑哥」,我带着最新发布的文章又来了!

老规矩,小手动起来~点赞关注不迷路!

esbuild简单介绍

esbuild为了突破了JavaScript语言的瓶颈,采用了Go语言编写,构建速度与同代码量下的webpack对比提升在10倍以上,开创了构建工具性能的新时代。

它的中文文档,本人正在不断的更新完善中,欢迎大家关注阅读!

重建(Rebuild)

Supported by: Build

如果您的使用场景涉及到相同的配置项,重复使用esbuildbuild API,您可能需要使用此API。比如,如果您正在实现自己的文件监听服务,这个配置项将非常有用。重建比再次构建会更高效,因为上一次生成中的一些数据是缓存的,如果原始文件自上一次构建以来没有更改,则可以重用。Rebuild API目前使用两种形式的缓存:

  • 存储文件在内存中,如果文件元数据自上次生成以来没有更改,则不会从文件系统中重新读取。此优化仅适用于文件系统路径。它不适用于插件创建的虚拟模块。

  • 存储解析后的AST在内存中,如果文件内容自上次构建以来没有更改,则可以避免重新解析AST。只要虚拟模块路径保持不变,这种优化不仅适用于文件系统模块,还适用于插件创建的虚拟模块。

以下是如何进行重建:

js 复制代码
import * as esbuild from 'esbuild'

let ctx = await esbuild.context({
  entryPoints: ['app.js'],
  bundle: true,
  outfile: 'out.js',
})

// Call "rebuild" as many times as you want
for (let i = 0; i < 5; i++) {
  let result = await ctx.rebuild()
}

// Call "dispose" when you're done to free up resources
ctx.dispose()

结语

笔者根据esbuild文档搭建了一套简洁的ts开发脚手架工程,编译速度非常快!脚手架还整合了eslint,另一篇文章还附带了调试教程,需要的朋友看这里:esbuild配合vscode搭建的ts开发环境,这编译速度,真香

另外,esbuild中文文档专栏,本人目前正在翻译整理,关注我,有最新的翻译文档会第一时间通知你!

(本文完)

励志前端小黑哥,全网唯一账号!

关注我,带你了解更多前端知识!

相关推荐
vipbic7 分钟前
用 Turborepo 打造 Strapi 插件开发的极速全栈体验
前端·javascript
天涯学馆8 分钟前
为什么 JavaScript 可以单线程却能处理异步?
前端·javascript
asdfg12589632 小时前
JS中的闭包应用
开发语言·前端·javascript
kirk_wang2 小时前
Flutter 导航锁踩坑实录:从断言失败到类型转换异常
前端·javascript·flutter
梦里不知身是客112 小时前
spark中如何调节Executor的堆外内存
大数据·javascript·spark
静小谢2 小时前
前后台一起部署,vite配置笔记base\build
前端·javascript·笔记
未来魔导3 小时前
go语言中json操作总结(下)
数据分析·go·json
用户47949283569153 小时前
改了CSS刷新没反应-你可能不懂HTTP缓存
前端·javascript·面试
深度学习实战训练营3 小时前
TransUNet:Transformer 成为医学图像分割的强大编码器,Transformer 编码器 + U-Net 解码器-k学长深度学习专栏
人工智能·深度学习·transformer
wangan0943 小时前
不带圆圈的二叉树
java·前端·javascript