【构建工具】vite2没捂热,vite5又来了,性能大幅提升!

vite2还没焐热,vite5又来了!!! 就在一周前vite5重磅发布了!性能大幅提升! 请看下面:下面是翻译过来的,原文:Vite 5.0 发布! |维特 (vitejs.dev)

Vite 4 大约在一年前发布,它为生态系统奠定了坚实的基础。每周的 npm 下载量从 2 万跃升至 5 万,因为项目不断建立在共享的基础设施上。框架不断创新,除了 Astro、Nuxt、SvelteKit、Solid Start、Qwik City 等之外,我们还看到了新框架的加入,使生态系统更加强大。RedwoodJS 和 Remix 切换到 Vite 为 React 生态系统的进一步采用铺平了道路。Vitest 的增长速度比 Vite 更快。其团队一直在努力工作,并将很快发布Vitest 7.5。当 Vite 与 Storybook、Nx 和 Playwright 等其他工具一起使用时,Vite 的故事不断改进,环境也是如此,Vite 开发人员在 Deno 和 Bun 中都可以工作。

一个月前,我们举办了第二届 ViteConf,由 StackBlitz 主办。与去年一样,生态系统中的大多数项目都聚集在一起分享想法并建立联系,以不断扩大共享空间。我们还看到新的部分补充了元框架工具带,如 Volar 和 Nitro。Rollup 团队在同一天发布了 Rollup 4,这是 Lukas 去年开始的传统。

六个月前,Vite 4.3 发布。此版本显著提高了开发服务器的性能。但是,仍有很大的改进空间。在 ViteConf 上,Evan You 公布了 Vite 开发 Rolldown 的长期计划,Rolldown 是一个具有兼容 API 的 Rollup 的 Rust 端口。一旦它准备好了,我们打算在 Vite Core 中使用它来承担 Rollup 和 esbuild 的任务。这将意味着构建性能的提升(以及后来的开发性能提升,因为我们将 Vite 本身的性能敏感部分迁移到 Rust 上),并大大减少了开发和构建之间的不一致。Rolldown目前处于早期阶段,团队正准备在年底前开源代码库。敬请关注!

今天,我们标志着 Vite 道路上的又一个重要里程碑。Vite 团队、贡献者和生态系统合作伙伴很高兴地宣布 Vite 5 正式发布。Vite 现在正在使用 Rollup 4,这已经代表了构建性能的大幅提升。此外,还有一些新选项可以提高开发服务器的性能配置文件。

Vite 5 专注于清理 API(删除已弃用的功能)并简化了几个功能,以解决长期存在的问题,例如切换到使用适当的 AST 替换而不是正则表达式。我们还将继续采取措施使 Vite 面向未来(现在需要 Node.js 18+,并且 CJS 节点 API 已被弃用)。define

快速链接:

  • 文档
  • 迁移指南
  • 更改日志

其他语言的文档:

  • 简体中文
  • 日本語
  • 西班牙醇
  • Português
  • 한국어
  • Deutsch (新翻译!

如果你是 Vite 的新手,我们建议您先阅读入门指南和功能指南。

我们感谢 Vite Core 的 850 多位贡献者,以及帮助我们走到这一步的 Vite 插件、集成、工具和翻译的维护者和贡献者。我们鼓励您参与进来,并与我们一起继续改进 Vite。您可以在我们的贡献指南中了解更多信息。首先,我们建议对问题进行分类、审查 PR、根据未解决的问题发送失败的测试 PR,并在 Discussions 和 Vite Land 的帮助论坛中帮助其他人。在此过程中,您将学到很多东西,并顺利为项目做出进一步贡献。如果您有任何疑问,请加入我们的 Discord 社区,并在 #contributing 频道上打个招呼。

要了解最新信息,请在 X 或 Mastodon 上关注我们。

Vite 5 快速入门

用于使用你喜欢的框架搭建 Vite 项目的脚手架,或者使用 vite.new 在线打开一个启动的模板来玩 Vite 5。您还可以运行以访问来自其他框架和运行时(Solid、Deno、SSR 和库启动器)的模板。 当您在该选项下运行时,模板也可用。pnpm create vite``pnpm create vite-extra``create vite-extra``create vite``Others

请注意,Vite 入门模板旨在用作使用不同框架测试 Vite 的游乐场。在构建下一个项目时,我们建议联系每个框架推荐的初学者。一些框架现在也重定向到它们的启动器(以及 Vue 和 Svelte)。create vite``create-vue``Nuxt 3``SvelteKit

Node.js 支持​

Vite 不再支持 Node.js 14 / 16 / 17 / 19,后者已达到其 EOL。现在需要 Node.js 18 / 20+。

性能​

除了 Rollup 4 的构建性能改进之外,还有一个新指南可帮助您识别和修复 vitejs.dev/guide/perfo… 常见的性能问题。

Vite 5 还引入了 server.warmup,这是一个缩短启动时间的新功能。它允许您定义一个模块列表,这些模块应在服务器启动后立即进行预转换。当使用 --open 或 server.open 时,Vite 也会自动预热应用的入口点或提供的 URL 来打开。

主要变化​

  • Vite 现在由 Rollup 4 提供支持
  • CJS 节点 API 已被弃用
  • 返工定义和 import.meta.env.* 替换策略
  • SSR 外部化组件价值现在与生产相匹配
  • worker.plugins 现在是一个函数
  • 允许包含 的路径 回退到 index.html
  • 调整开发和预览 HTML 服务行为
  • 默认情况下,清单文件现在在 .vite 目录中生成
  • CLI 快捷方式需要额外的 Enter 键
  • 更新 experimentalDecorators 和 useDefineForClassFields TypeScript 行为
  • 删除 --https 标志和 https: true
  • 删除 resolvePackageEntry 和 resolvePackageData API
  • 删除以前已弃用的 API
  • 阅读有关影响插件和工具作者的高级更改的更多信息

迁移到 Vite 5​

我们与生态系统合作伙伴合作,确保顺利迁移到这个新专业。再一次,vite-ecosystem-ci 对于帮助我们做出更大胆的改变,同时避免回归至关重要。我们很高兴看到其他生态系统采用类似的方案来改善他们的项目与下游维护者之间的协作。

对于大多数项目来说,Vite 5 的更新应该是直接的。但我们建议在升级之前查看详细的迁移指南。

可以在 Vite 5 更新日志中找到对 Vite 核心的完整更改列表的低级细分。

转发本文+关注+添加下方下助理即可领取更多资料

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/223523.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

MODBUS协议

一、概念 modbus是一个公开免费的协议,广泛应用于工业控制领域(PLC和仪器,PLC和PLC,PLC和上位机,PLC和触摸屏等等,其中PLC是可控制逻辑单元) 他有两种物理接口(硬件协议)…

uniapp 蓝牙小程序-兼容安卓和iOS

withTimeout方法可以在搜寻设备时等待指定的秒数,如果30秒内未搜索到则取消搜索 /*** 超时控制函数* param {Promise} promise 回调函数* param {number} timeout 超时时间, 默认10s*/ export function withTimeout(promise, timeout 10000) {let timeoutEvent …

基于Netty连接池泄露问题了解客户端启动源码

连接池导致内存泄漏案例演示 简介 我们生产环境常常会用Netty客户端作为连接工具,尽管Netty强大且方便,但是使用不当的话也可能造成严重的生成事故。笔者本文就以一个连接池使用不当导致内存泄漏的案例来展开探讨。 问题复现 服务端代码 我们先贴出…

Sui承诺向流动性质押协议投入$SUI

Sui将提供SUI以支持三个流动性质押协议及其相应的流动性质押token( Liquid Staking Tokens,LST),为网络上不断增长的DeFi领域增加了流动性。此次注入将加强LST在交易和其他DeFi 用途中的流动性。 流动性质押让SUI所有者通过将其t…

32、应急响应——linux

文章目录 一、linux进程排查二、linux文件排查三、linux用户排查四、linux持久化排查4.1 历史命令4.2 定时任务排查4.3 开机启动项排查 五、linux日志分析六、工具应用 一、linux进程排查 查看资源占用:top查看所有进程:ps -ef根据进程PID查看进程详细信…

ARM开发

ARM课程介绍 课程特点 ARM开发 --> Linux移植 --> 驱动开发 前后联系:ARM和系统移植为驱动开发学习做准备工作 所需知识:C语言基础及STM32需要的硬件知识 课程要求 目标:学习程序运行原理、硬件的控制原理 会看原理图、芯片手册、学习…

ChatGPT对话为什么不用WebSocket而使用EventSource?

文章目录 1. 引言2. WebSocket和EventSource简介2.1 WebSocket2.2 EventSource 3. ChatGPT对话系统的特点4. EventSource的优势4.1 简单易用4.2 容错性强4.3 兼容性良好 5. 为何选择EventSource而非WebSocket?5.1 单向通信模式5.2 长轮询模式5.3 简化部署和维护 6. …

SpringBoot+Netty+Websocket实现消息推送

这样一个需求&#xff1a;把设备异常的状态每10秒推送到页面并且以弹窗弹出来&#xff0c;这个时候用Websocket最为合适&#xff0c;今天主要是后端代码展示。 添加依赖 <dependency><groupId>io.netty</groupId><artifactId>netty-all</artifact…

用Go汇编实现一个快速排序算法

本代码全网首发&#xff0c;使用Go plan9 windows arm64汇编&#xff0c;实现基础版快速排序算法。 未引入随机因子的快速排序的普通Go代码长这样。 func QuickSort(arr []int) {if len(arr) < 1 {return}base, l, r : arr[0], 0, len(arr)-1for i : 1; i < r; {if arr…

Vue H5项目,怎么引入uni.webview sdk,调用uni postMessage实现手机蓝牙连接打印功能(uniapp)

前言 目前公司Vue H5项目&#xff0c;用webview打包成APP&#xff0c;现产品提出这样打包出来的app运行较慢&#xff0c;需要用uniapp方式&#xff08;即使用HBuilder编辑器来打包H5&#xff09;来打包&#xff0c;那需要的基座就不是安卓的基座而是uniapp的基座&#xff0c;而…

扭矩法、屈服点法哪个比较高效?——SunTorque智能扭矩系统

在机械制造和维修领域&#xff0c;拧紧螺栓和螺母是一项重要的操作。拧紧方法的合理选择和使用&#xff0c;对于确保机械设备的稳定性和安全性具有至关重要的作用。本文SunTorque智能扭矩系统将介绍两种最常用的拧紧方法&#xff0c;并探讨它们的轴力范围计算方法。一、扭矩法 …

电信网关配置管理系统后台 upload.php 文件上传漏洞复现

0x01 产品简介 中国电信集团有限公司(英文名称“China Telecom”、简称“中国电信”)成立于2000年9月,是中国特大型国有通信企业、上海世博会全球合作伙伴。 0x02 漏洞概述 电信网关配置管理系统后台 /manager/teletext/material/upload.php 接口存在文件上传漏洞,攻击者…

【数电笔记】56-消抖开关

目录 说明&#xff1a; 1. 按键抖动形成的原因 2. 按键消抖的方法 3. 用与非RS触发器构成消抖开关&#xff08;硬件消抖&#xff09; 说明&#xff1a; 笔记配套视频来源&#xff1a;B站本系列笔记并未记录所有章节&#xff0c;只对个人认为重要章节做了笔记&#xff1b;标…

【稳定检索|投稿优惠】2024年艺术鉴赏与社会科学教育国际会议(ICAASSE 2024)

2024年艺术鉴赏与社会科学教育国际会议(ICAASSE 2024) 2024 International Conference on Art Appreciation and Social Science Education(ICAASSE) 一、【会议简介】 2024年艺术鉴赏与社会科学教育国际会议(ICAASSE 2024)&#xff0c;这场学术盛宴&#xff0c;将于2024年2月1…

郝斌C语言自学教程笔记

赫斌C语言——笔记目录 c语言编程预备知识流程控制函数变量指针结构体位运算符 前段时间康哥看我C语言基础不牢,推荐我学习郝斌老师的C语言课程&#xff0c;花2周看完之后发现确实是目前所看的C语言课程中最好的&#xff0c;不仅非常适合入门&#xff0c;而且对即使学了几年C语…

怒斥以色列后突发心脏病倒地,土耳其议员抢救无效身亡!

这两天互联网上热传一段视频&#xff0c;说的就是土耳其议员在议会演讲时突然倒地晕厥&#xff0c;两天后就去世了。这可真是让人震惊啊&#xff01; 据说这位议员是土耳其反对党幸福党的&#xff0c;名字叫比特梅兹。他在议会发表批评以色列的言论时&#xff0c;情绪过于激动…

安装2023最新版Java SE 21.0.1来开发Java应用程序

安装2023最新版Java SE 21.0.1来开发Java应用程序 Install the latest version of Java SE 21.01 to Develop Java Applications By JacksonML 本文简要介绍如何下载和安装2023年最新版Java Development Kit (简称JDK&#xff0c;即Java开发工具包标准版&#xff09;21.0.1&…

长尾问题之LDAM

做法&代码&公式 step1: 全连接层的权重W和特征向量X都归一化,相乘 W * X P (得到各个类别的概率) # 定义权重&#xff0c;初始化 weight nn.Parameter(torch.FloatTensor(num_classes, num_features)) weight.data.uniform_(-1, 1).renorm_(2, 1, 1e-5).mul_(1e5)#…

Java 线程的基本概念

创建和运行线程 方法一&#xff0c;直接使用 Thread // 创建线程对象 Thread t new Thread() {public void run() {// 要执行的任务}};// 启动线程 t.start();例如&#xff1a; // 构造方法的参数是给线程指定名字&#xff0c;推荐 Thread t1 new Thread("t1") …

网络安全——SQL注入实验

一、实验目的要求&#xff1a; 二、实验设备与环境&#xff1a; 三、实验原理&#xff1a; 四、实验步骤&#xff1a; 五、实验现象、结果记录及整理&#xff1a; 六、分析讨论与思考题解答&#xff1a; 七、实验截图&#xff1a; 一、实验目的要求&#xff1a; 1、…