尤雨溪官宣:Vue 3 将于 2022 年 2 月 7 日成为新的默认版本!

简介: 尤雨溪官宣:Vue 3 将于 2022 年 2 月 7 日成为新的默认版本!

刚刚,Vue.js 框架作者尤雨溪宣布: Vue 3 将在 2022 年 2 月 7 日成为新的默认版本。

image.png

在其最新提交至 GitHub 的公告信息里显示,“开发者要关注可能需要采取的措施,来确认是否需要在默认版本切换之前做相应改动以避免发生异常。”

以下为尤雨溪的公告原文:

从库到框架

在最开始的时候,Vue 仅仅是一个运行时库。但这些年来,它已经逐步发展成了一个包含许多子项目的框架:

  • 核心库,即 vue npm 包
  • 内容足够当作一本书的文档
  • 构建工具链(Vue CLI、Vue Loader 和其他支持包)
  • 用于构建单页应用的路由 Vue Router
  • 用于状态管理的 Vuex
  • 用于调试和分析的浏览器开发者工具扩展
  • 用于支持开发单文件组件的 VSCode 扩展 Vetur
  • 用于进行静态风格/错误检查的 ESLint 插件
  • 用于组件测试的 Vue Test Utils
  • 利用 Vue 运行时功能的定制 JSX Babel 插件
  • 用于静态网站生成的 VuePress

正因为 Vue 是一个社区驱动的项目,才让这一切成为可能。这些项目中的许多都是由社区成员发起,他们后来成为了 Vue 团队的成员。其余的项目最初由我发起,但现在除了核心库之外,几乎都完全由团队维护。

Vue 3 的 “软发布”

随着核心库发布新的大版本,框架的所有其他部分也需要一起同步更新。我们还需要为 Vue 2 用户提供一个升级方案。对于 Vue 这样一个社区驱动的团队来说,这是一个巨大的工程。在 Vue 3 的核心库完成的时候,框架的其他部分要么还在 beta 状态,要么还没有开始适配 Vue 3。当时我们的决定是先发布核心库,这样早期用户可以先用起来,库和上层框架的开发者也可以先适配起来,而我们则继续更新框架的其余部分。

在这个过程中,我们依然将 Vue 2 保留为文档和 npm 安装时的默认版本。这是因为我们知道对于大部分用户来说,在 Vue 3 的其余部分完善以前,Vue 2 仍然提供了更一致且完整的体验。

崭新的 Vue

“软发布” 的过程比预期要长,但这个时刻终于到了:我们很高兴地宣布,Vue 3 将在 2022 年 2 月 7 日成为新的默认版本。

除了 Vue 核心库以外,我们还几乎改进了框架的每个方面。

  • 基于 Vite 的极速构建工具链
  • <script setup> 带来的开发体验更丝滑的组合式 API 语法
  • Volar 提供的单文件组件 TypeScript IDE 支持
  • vue-tsc 提供的针对单文件组件的命令行类型检查和生成
  • Pinia 提供的更简洁的状态管理
  • 新的开发者工具扩展,同时支持 Vue 2/Vue 3,并且提供一个插件系统来允许社区库自行扩展开发者工具面板。

我们还彻底重写了主文档。全新的 vuejs.org (目前处于待发布状态,中文版的翻译还在进行中) 将提供最新的框架概述与开发建议、针对不同背景的用户的灵活的学习路径,在整个指南与示例中都能够在选项式 API 和组合式 API 之间进行切换,以及许多新的深入章节。新文档本身的网站性能也非常优秀——我们将在不久后的另一篇博文中详细探讨一下。

版本切换细节

下面是我们所说的“新的默认版本”的具体细节。此外,请阅读可能需要采取的措施部分,来确认你是否需要在默认版本切换之前做相应改动以避免发生异常。

npm 发布标签

  • npm install vue 将默认安装 Vue 3。
  • 所有其他官方 npm 包的 latest 发布标签将指向其 Vue 3 的兼容版本,包括 vue-router、vuex、vue-loader 和 @vue/test-utils。

官方文档与站点

所有的文档和官方站点将默认切换到 Vue 3 版本。包括:

  • vuejs.org
  • router.vuejs.org
  • vuex.vuejs.org
  • vue-test-utils.vuejs.org (将迁移到 test-utils.vuejs.org)
  • template-explorer.vuejs.org

请注意,新的 vuejs.org 将是完全重写的版本,而不是目前部署在 v3.vuejs.org 的版本。

这些站点当前的 Vue 2 版本将被迁移到新地址 (版本前缀表示库的各自版本,而非 Vue 核心库的版本):

  • vuejs.org -> v2.vuejs.org (旧的 v2 网址将自动重定向到新地址上)
  • router.vuejs.org -> v3.router.vuejs.org
  • vuex.vuejs.org -> v3.vuex.vuejs.org
  • vue-test-utils.vuejs.org -> v1.test-utils.vuejs.org
  • template-explorer.vuejs.org -> v2.template-explorer.vuejs.org

GitHub 仓库

在写这篇文章时,仓库相关的变化已经生效了。

vuejs 组织下的所有 GitHub 仓库将把默认分支切换到 Vue 3 对应的版本。此外,以下仓库都将被重命名,以删除其名称中的 next:

  • vuejs/vue-next -> vuejs/core
  • vuejs/vue-router-next -> vuejs/router
  • vuejs/docs-next -> vuejs/docs
  • vuejs/vue-test-utils-next -> vuejs/test-utils
  • vuejs/jsx-next -> vuejs/babel-plugin-jsx

此外,主文档的翻译仓库将被移至 vuejs-translations 组织下。

GitHub 会自动处理仓库的重定向,所以之前的源码与 issue 问题的链接应该仍然有效。

开发者工具扩展

开发者工具 v6 目前是发布到 Chrome Web Store 的 beta 频道下的,在版本切换后,将移至稳定频道。

目前的稳定频道仍然可用。它将被迁移到遗留频道。

可能需要采取的措施 {#potential-required-actions}

使用未指定版本的 CDN 链接

如果你通过 CDN 链接使用 Vue 2 而没有指定版本,请确保通过 @2 来指定一个版本范围:

  • <script src="https://unpkg.com/vue"></script>
  • <script src="https://unpkg.com/vue@2"></script>
  • <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.min.js"></script>
  • <script src="https://cdn.jsdelivr.net/npm/vue@2/dist/vue.min.js"></script>

注意:即使使用 Vue 3,你也应该始终在生产环境指定一个版本范围,以避免意外地加载到未来的大版本。

npm latest 标签

如果你使用 latest 标签或 * 来从 npm 安装 Vue 或其他官方库,请更新为明确使用兼容 Vue 2 的版本:

{

"dependencies": {

  • "vue": "latest",
  • "vue": "^2.6.14",
  • "vue-router": "latest",
  • "vue-router": "^3.5.3",
  • "vuex": "latest"
  • "vuex": "^3.6.2"
    },
    "devDependencies": {
  • "vue-loader": "latest",
  • "vue-loader": "^15.9.8",
  • "@vue/test-utils": "latest"
  • "@vue/test-utils": "^1.3.0"
    }
    }

vue-3vue.js

相关文章
|
人工智能 IDE API
白板秒变IDE,草图直接生成可运行代码!Pad.ws:白板+代码编辑器深度结合,创意到实现无缝衔接
Pad.ws是一款创新的在线开发环境,将交互式白板与完整IDE工具深度结合,支持多人实时协作和多种编程语言,无需安装即可通过浏览器访问。
1153 1
白板秒变IDE,草图直接生成可运行代码!Pad.ws:白板+代码编辑器深度结合,创意到实现无缝衔接
|
6月前
|
监控 JavaScript Linux
零基础玩转OpenClaw|阿里云+本地三系统部署 10大高价值案例(理财/运营/办公/监控)+避坑指南
2026年,OpenClaw(原Clawdbot)凭借开源灵活的Skill扩展生态,成为AI自动化领域的“万能工具”,但多数用户部署后因不懂实用场景而闲置。实际上,通过搭配不同Skill模块,OpenClaw可覆盖金融理财、新媒体运营、信息获取、办公自动化、智能监控五大核心场景,从“搞钱辅助”到“摸鱼提效”全方位发挥价值。
815 5
|
存储 Java 文件存储
🗄️Spring Boot 3 整合 MinIO 实现分布式文件存储
本文介绍了如何基于Spring Boot 3和MinIO实现分布式文件存储。随着应用规模扩大,传统的单机文件存储方案难以应对大规模数据和高并发访问,分布式文件存储系统成为更好的选择。文章详细讲解了MinIO的安装、配置及与Spring Boot的整合步骤,包括Docker部署、MinIO控制台操作、Spring Boot项目中的依赖引入、配置类编写及工具类封装等内容。最后通过一个上传头像的接口示例展示了具体的开发和测试过程,强调了将API操作封装成通用工具类以提高代码复用性和可维护性的重要性。
3109 7
🗄️Spring Boot 3 整合 MinIO 实现分布式文件存储
|
开发者 Python
确保你的Python环境中已经安装了`python-docx`模块。如果还没有安装,可以通过pip来安装:
确保你的Python环境中已经安装了`python-docx`模块。如果还没有安装,可以通过pip来安装:
|
Java Apache Maven
Java将word文档转换成pdf文件的方法?
【10月更文挑战第13天】Java将word文档转换成pdf文件的方法?
5988 1
|
数据采集 数据可视化 数据挖掘
数据挖掘实战:使用Python进行数据分析与可视化
在大数据时代,Python因其强大库支持和易学性成为数据挖掘的首选语言。本文通过一个电商销售数据案例,演示如何使用Python进行数据预处理(如处理缺失值)、分析(如销售额时间趋势)和可视化(如商品类别销售条形图),揭示数据背后的模式。安装`pandas`, `numpy`, `matplotlib`, `seaborn`后,可以按照提供的代码步骤,从读取CSV到数据探索,体验Python在数据分析中的威力。这只是数据科学的入门,更多高级技术等待发掘。【6月更文挑战第14天】
1670 11
|
移动开发 前端开发 JavaScript
【专栏:HTML与CSS实战项目篇】使用HTML5与CSS3制作一个动态表单验证页面
【4月更文挑战第30天】本文介绍了使用HTML5和CSS3创建动态表单验证页面的方法。首先,简述HTML5用于构建网页内容,CSS3用于描述样式。接着,分四步展示实现过程:1) 设计包含输入框和提示信息的表单结构;2) 使用CSS3创建样式,增强视觉效果;3) 使用JavaScript监听输入事件,动态验证表单并显示错误信息;4) 测试和调试确保跨平台兼容性。通过学习,开发者能掌握创建带验证功能的表单,提升用户体验。
475 7
|
数据采集 存储 关系型数据库
Python爬虫技术的应用案例:聚焦热点话题与趋势分析
Python爬虫技术的应用案例:聚焦热点话题与趋势分析
|
Serverless 区块链 数据安全/隐私保护
蚂蚁区块链
蚂蚁区块链
3003 0
|
SQL canal 消息中间件