| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> JavaScript知识库 -> 使用swc与esbuild闪电加速你的webpack打包链路 -> 正文阅读 |
|
[JavaScript知识库]使用swc与esbuild闪电加速你的webpack打包链路 |
前言直入正题,自从 umi mfsu 和 vite unbundle 打响 FE 高效开发第一枪,淘系 rax 新增 swc 功能、swc 作者加入 vercel 麾下,nextjs 新版本默认 swc 打包,再到阿里 ice2 新增 swc + esbuild 链路支持,swc 和 esbuild 逐渐入侵 FE 主工具流,暗示了一统天下的预兆。 Rust 和 Go 将成为未来 JavaScript 基础建设的主流语言。 本文将就 swc 与 esbuild 如何打通落地到 webpack 项目中为抓手来进行蓝图描绘,在阅读前,希望你已经具备了足够的基础知识和了解度,过于细致的内容将留给各位同学自行收束。 正文由于 esbuild 的定位是打包器,而不是真正的转译 polyfill 器,故我们的链路是 swc 先代替 babel 打包和 polyfill,再走 esbuild 压缩代码。 到这里为止,假如你是使用的 vue-cli 或 cra 的脚手架非配置透明项目,基本就可以说拜拜了(不排除 craco 的神仙高手),我们只针对 webpack 透明项目介绍使用规则。 打通 swc首先打通 swc 为我们做 ts 的转译,当然我们是对标 React 项目。 安装 swc
配置 swc项目内新建
这里着重要说的是,swc 的配置选项都很语义化,了解 本质上官方文档也书写的极其简单,因为这些配置项大多来自 es 规范和 babel 生态圈,如果你真的不懂,请照猫画虎使用即可,此处将不再浪费口舌介绍基础知识。 打通 webpack swc 链路配置
关于 《 mini-css-extract-plugin TypeError: $ is not a function 问题解决 》 当然如果你有特殊的定制逻辑,按自己的高级正则配置即可。 到现在为止,swc 链路就完整打通了,下面我们打通 esbuild 链路。 打通 esbuild安装 esbuild
配置 esbuild我们使用
相信有知识积累的同学一眼就知道了,直接把 Terser 和 CssMini 给替换了,其实就是 当然,css mini 还要联动 到此为止,我们的 esbuild 链路也打通了。 总结根据实战经验,项目越大享受的收益越大,至少有 2x 打包时间减半以上的收益。 目前 swc 和 esbuild 都处于疯狂迭代中,使用过程中即时 sync 最新的 |
|
JavaScript知识库 最新文章 |
ES6的相关知识点 |
react 函数式组件 & react其他一些总结 |
Vue基础超详细 |
前端JS也可以连点成线(Vue中运用 AntVG6) |
Vue事件处理的基本使用 |
Vue后台项目的记录 (一) |
前后端分离vue跨域,devServer配置proxy代理 |
TypeScript |
初识vuex |
vue项目安装包指令收集 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/24 4:08:10- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |