【构建工具】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 核心的完整更改列表的低级细分。

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

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

swagger的ApiModelProperty设置字段的顺序

需求 让前端可以直接通过swagger就能知道各个字段是什么意思 如何配置 比如,我们设置了ApiModelProperty ApiModelProperty("用户主键")private Long userId;在swagger页面能直接看到注释 但是这个顺序是按照字母排序的,明显不符合我们的要…

三层交换,DHCP的详解与VRRP

目录 一、三层交换 1、三层交换机的作用: 2.vlan的虚拟接口vlanif(ifinterface接口) 3.三层交换机实验 4.拓展实验​编辑 二、DHCP 1.自动获取ip地址: 2.DHCP的好处: 3.分配方式: 4.举例&#xff…

[每周一更]-(第77期):反向代理的优势

反向代理 比如通过香港服务器去代理一些国内访问不到的服务器,APP中有些应用就将请求通过香港服务器转发到目标服务器中。 应该是域名访问,国内服务器需要备案,然后放到香港服务器做个转发代理。 代理服务器,客户机在发送请求时&…

【Android】使用 Glide 给 ImageView 加载图像的简单案例

前言 Android Glide是一个用于在Android应用中加载和显示图片的流行开源库。它提供了简单易用的API,可以帮助开发者高效地加载远程图片、本地图片以及GIF动画,并提供了缓存、内存管理等功能,使得图片加载在移动应用中更加流畅和高效。Glide还…

Axure的使用

1.Axure是什么??? Axure是一款功能强大的原型设计工具,它可以让用户快速地创建交互式原型,并针对原型进行测试和改进。Axure的主要特点包括可定制的界面元素库、交互动画效果、条件逻辑、团队协作等功能,适…

2023年全国职业院校技能大赛信息安全管理与评估赛项正式赛(模块一)GZ032

全国职业院校技能大赛高等职业教育组 信息安全管理与评估 任务书 模块一 网络平台搭建与设备安全防护 极安云科专注技能竞赛,包含网络建设与运维和信息安全管理与评估两大赛项,及各大CTF,基于两大赛项提供全面的系统性培训,拥…

Intewell-Hyper I_V2.0.0_release版本正式发布

新型工业操作系统_Intewell-Hyper I_V2.0.0_release版本正式发布 软件发布版本信息 版本号:V2.0.0 版本发布类型:release正式版本 版本特点 1.建立Intewell-Hyper I基线版本 版本或修改说明 基于Intewell-Lin V2.3.0_release版本: 1.Devel…

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

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

软实力篇---第二篇

系列文章目录 文章目录 系列文章目录前言一、必知必会的几点二、必须了解的两大法则三、项目经历怎么写前言 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站,这篇文章男女通用,看懂了就去分享给你的码吧。 一、必知必…

Docker-consul容器服务自动发现与注册

什么叫微服务或者注册与发现? 是一种分布式管理系统,定位服务的方法。 在传统的架构中,应用程序之间直连到已知的服务。 已知的服务:设备提供的网络、IP地址、基于tcp/ip端口 基于现微服务部署,服务的动态性&#…

webGL开发智慧城市流程

开发智慧城市的WebGL应用程序涉及多个方面,包括城市模型、实时数据集成、用户界面设计等。以下是一个一般性的流程,您可以根据项目的具体需求进行调整,希望对大家有所帮助。 1.需求分析: 确定智慧城市应用程序的具体需求和功能。考…

光学镜头市场研究:预计2029年将达到460亿元

随着终端产品应用领域的不断拓宽和深化,未来光学镜头设计和生产技术的重点是提高成像质量、增加功能并缩小体积。具体而言,光学镜头产品技术在不同的应用领域正呈现出不同的特点。如在数字安防领域,随着视频监控技术应用范围和场景的逐步扩展…

使用Pytorch从零开始构建StyleGAN2

这篇博文是关于 StyleGAN2 的,来自论文Analyzing and Improving the Image Quality of StyleGAN,我们将使用 PyTorch 对其进行干净、简单且可读的实现,并尝试尽可能地还原原始论文。 如果您没有阅读 StyleGAN2 论文。或者不知道它是如何工作…

python接口自动化测试(单元测试方法)

一、环境搭建 python unittest requests实现http请求的接口自动化Python的优势:语法简洁优美, 功能强大, 标准库跟第三方库灰常强大,建议大家事先了解一下Python的基础;unittest是python的标准测试库,相比于其他测试框架是python目前使用最广…

class083 动态规划中用观察优化枚举的技巧-下【算法】

class083 动态规划中用观察优化枚举的技巧-下【算法】 算法讲解083【必备】动态规划中用观察优化枚举的技巧-下 code1 1235. 规划兼职工作 // 规划兼职工作 // 你打算利用空闲时间来做兼职工作赚些零花钱,这里有n份兼职工作 // 每份工作预计从startTime[i]开始、e…

安装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,即Java开发工具包标准版)21.0.1&…

“一键调整尺寸,轻松完成视频批量剪辑:批量放大视频尺寸“

你是否曾经遇到过需要批量调整视频尺寸的情况?无论是为了适应不同的播放平台,还是为了满足客户的特定需求,批量调整视频尺寸都是一项繁琐而耗时的工作。但是,现在有一种方法可以让你轻松完成这项任务,那就是使用我们的…

[已解决]HttpMessageNotReadableException: JSON parse error: Unexpected character:解析JSON时出现异常的问题分析与解决方案

🌷🍁 博主 libin9iOak带您 Go to New World.✨🍁 🦄 个人主页——libin9iOak的博客🎐 🐳 《面试题大全》 文章图文并茂🦕生动形象🦖简单易学!欢迎大家来踩踩~&#x1f33…

linux的定时任务Corntab

安装crontab # yum安装crontab yum install -y crontab# 开机自启crond服务并现在启动 systemctl enable --now crondcron系统任务调度 系统任务调度: 系统周期性所要执行的工作,比如写缓存数据到硬盘、日志清理等。 在/etc/crontab文件,这…

【IEEE】2区SCI,接收领域广,稳定检索47年!

重点 本期推荐 区块链是一种新兴技术,很多行业和领域都以创新方式采用了此技术,如能源、金融、媒体和娱乐以及零售等。此外,区块链作为一门新兴的交叉学科, 涉及密码学应用(加密,隐私等), 分布式…