当前位置:首页 > 技术分析 > 正文内容

时隔多年,VitePress 终于迎来了 v1.0 !

ruisui883个月前 (02-03)技术分析16

家好,很高兴又见面了,我是"高级前端?进阶?",由我带着大家一起关注前端前沿、深入前端底层技术,大家一起进步,也欢迎大家关注、点赞、收藏、转发,您的支持是我不断创作的动力。

2024 年 3 月 21 日 Evan You 发布了 VitePress v1.0 版本,本文将带着大家简单聊聊什么是 VitePress 以及 v1.0 版本带来了那些优秀特性。

1. 什么是 VitePress

VitePress is Vite & Vue Powered Static Site Generator. It turns Markdowns to Beautiful Docs in Minutes

VitePress 是一款静态站点生成器 (SSG),专为构建快速、以内容为中心的网站而设计。 简而言之,VitePress 获取用户用 Markdown 编写的源内容,为其应用主题然后生成可以轻松部署的静态 HTML 页面。

VitePress 建立在 Vite 和 Vue 之上,是 VuePress 的精神继承者和现代替代品,同时为 Vite、Rollup、Pinia、VueUse、Vitest、D3、UnoCSS、Iconify 等文档提供支持。VitePress 的典型特征包括:

  • 专注于内容:只需使用 Markdown 即可轻松创建精美的文档网站
  • 享受 Vite DX:即时服务器启动,闪电般快速的热更新,并利用 Vite 生态插件
  • 使用 Vue 进行定制:直接在 Markdown 中使用 Vue 语法和组件,同时支持使用 Vue 构建自定义主题
  • 站点速度快性能好:使用静态 HTML 进行快速初始加载,使用客户端路由进行快速加载后导航。

同时,Vue.js 官方文档也基于 VitePress,但使用多个翻译之间共享的自定义主题。

目前 VitePress 在 Github 通过 MIT 协议开源,有超过 10.8k 的 star、1.8k 的 fork、21.8k 的项目依赖量、代码贡献者 300+、妥妥的前端优质开源项目。

2.VitePress v1.0 新特性

与许多传统的 SSG 不同,VitePress 生成的网站在初次访问时提供静态 HTML,随后水合 (Hydration) 为单页应用程序(SPA)以供站内的后续导航,该模型提供了最好的性能与速度的平衡。

2.1 快速初始化页面加载

对任何页面的初始访问都提供静态、预渲染的 HTML 以实现快速加载速度和最佳 SEO。

然后页面会加载一个 JavaScript Bundle,将页面水合为 Vue SPA,借助于 Vue 3 性能和编译器优化该过程非常快,用户几乎无感。 根据 PageSpeed Insights 数据,即使在网络速度较慢的低端移动设备上,VitePress 网站也能获得近乎完美的性能分数。

2.2 快速加载后导航

VitePress 的 SPA 模型在初始加载后能带来更好的用户体验。

// 使用 Speculation Rules API prefetch 规则配置
// 或者使用 

站内的后续导航不会导致整个页面重新加载。 相反,传入页面的内容被获取并动态更新,VitePress 还会自动预取视口内链接的页面块。 在大多数情况下,加载后导航几乎是实时的。

2.3 较好的互动性

为了能够水合嵌入静态 Markdown 中的动态 Vue 部分,每个 Markdown 页面都被处理为 Vue 组件并编译为 JavaScript。

---
hello: world
---


## Markdown Content
The count is: {{count}}


听起来可能效率比较低,但 Vue 编译器足够智能,可以分离静态和动态部分从而最大限度减少水合成本和有效负载大小。 对于初始页面加载,静态部分会自动从 JavaScript 有效负载中消除并在水合作用期间跳过。

参考资料

https://blog.vuejs.org/posts/vitepress-1.0

https://vitepress.dev/

https://github.com/vuejs/vitepress

https://developer.mozilla.org/en-US/docs/Glossary/Prefetch

扫描二维码推送至手机访问。

版权声明:本文由ruisui88发布,如需转载请注明出处。

本文链接:http://www.ruisui88.com/post/881.html

标签: vite.js
分享给朋友:

“时隔多年,VitePress 终于迎来了 v1.0 !” 的相关文章

Vue组件通信之props深入详解!

props 是 Vue 组件中一个很重要的概念。它是用来从父组件向子组件传递数据的。为什么需要props?这是因为在Vue中,组件是相互隔离的。每个组件都有自己的作用域,子组件无法直接访问父组件的状态或值。通过props,父组件可以将数据传递给子组件。使用props的步骤:1. 在子组件中定义pro...

jvm疯狂吃内存,到底是谁的锅?

jvm应该是每一个java程序员都需要掌握的内容,但是在没有遇到问题之前,很多都是基于理论的,唯有实战才能增加个人的知识储备。本文是从一个角度来分析是谁在狂吃内存,希望对你有所帮助。本文是易观技术人员注意到一台开发机上各个微服务进程占用内存很高,随即便展开了调查......ps:本文来源于:http...

博信股份新战略后再推新品 TOPPERS E2耳机售价199元

中新网6月21日电 20日,博信股份在北京正式推出新品TOPPERS主动降噪耳机E2,这是博信股份继2月战略暨新品发布会后的第二次新品亮相。价格方面,TOPPERS主动降噪耳机E2零售价199元,并于6月20日下午4点在京东商城公开销售。据介绍,TOPPERS主动降噪耳机E2采用AMS(奥地利微电子...

美国民众负债累累 但今年假期消费者支出仍将创下新高

智通财经APP获悉,在迎接假期之际,许多美国人已经背负了创纪录的信用卡债务。然而,今年假期消费者支出仍将创下新高。根据美国零售联合会(NRF)上周发布的报告,预计今年11月1日至12月31日期间的消费总额将达到创纪录的9795亿至9890亿美元之间。NRF首席经济学家Jack Kleinhenz表示...

你感动了吗?佳能超规格镜头 RF 24-105mm F2.8深度测评

如果要你选一支用作多题材创作的挂机镜头,那我相信很多人会选择24-105mm这个焦段的镜头。作为一支可以实现从广角到长焦的变焦镜头,24-105mm有着丰富的焦段选择。只是基于镜头体积以及光学结构上的限制,此前的24-105mm镜头只能恒定在F4的光圈。而佳能打破了这一限制,将实用焦段和恒定光圈完美...

Excel中的FILTER函数详细介绍及使用示例

在Excel中处理大量数据时,经常需要根据特定条件筛选出符合条件的数据行或列。这正是Excel的FILTER函数发挥作用的地方。FILTER函数是Excel中一个非常强大的工具,它可以基于一个或多个条件动态地过滤数据,使数据分析和报告制作变得更加高效和准确。本文将详细介绍FILTER函数的用法,并提...