Vue 3拖更,尤雨溪介绍最新进展

Vue.js 作者尤雨溪近日介绍了 Vue 3 的最新进展。

尤雨溪表示,由于在 Vue 3 上花费的大部分时间都投入到了设计和构建稳定的内核上,不过要让整个框架处于"ready"状态,不仅仅是内核的问题,还需要有兼容版本的支持库 (Vue Router, Vuex, test utils)、工具(CLI、eslint 插件、浏览器开发工具扩展、IDE 扩展)和文档(包括针对新用户和用于迁移的文档)。将所有这些内容整合在一起需要协调许多方面的工作。

他希望专注于编写出好的软件,而不是赶工期。因此原本计划2020年上半年发布 Vue 3,但考虑到目前的进度,不得不进行调整。现在的计划是7月中旬发布 RC 版本,8月初正式发布 3.0 版本。

Vue 3 主要部分的进展

Vue 3 Core

Vue 3 core 已经处于 beta 阶段两个多月,目前已合并所有计划中的重大更改 RFC,并且在正式发布之前不会进行进一步的重大变更。可以认为 Vue 3 core 已到达稳定状态,并为 RC 版本做好了准备。

Vue Router

目前存在部分与vue-router@3.x相关的路由钩子(router hook)行为一致性问题,这也是 Vue Router 没有被标记为 Beta 的原因。不过在非关键项目上可以使用新的路由。

Vuex

Vuex 4.0 和 3.x 之间的唯一区别是它与 Vue 3 兼容,目前已准备好和 Vue 3 Core 一起进入 RC 阶段。

Vue CLI

Vue CLI 中的 Vue 3 支持目前通过 vue-cli-plugin-vue-next 插件提供。可以先通过脚手架构建一个新项目,然后运行vue add vue-next来切换到 Vue 3。Vue 3 进入 RC 阶段后会成为项目创建过程中的一个选项。

要注意的是,如果对 webpack 和 IE11 没有特别要求的支持,也可以使用 Vite 启动 Vue 3 项目。

JSX Support

当前有两种针对 Vue 3 的 JSX 转换实现,其语法略有不同(针对 Vue 的特定功能):

  • vueComponent/jsx

  • HcySunYang/vue-next-jsx

目前正在通过此 issue 收集意见以统一设计,并制定一个官方规范,说明如何在 JSX 中处理 Vue 特性。

其他项目

ProjectStatus
vue-devtoolsWIP (beta channel with Vue 3 support in early July)
eslint-plugin-vue7.0.0-alpha.9 [Github]
@vue/test-utils2.0.0-alpha.7 [Github]
vue-class-component8.0.0-alpha.6 [Github]
vue-loader16.0.0-beta.4 [Github]
rollup-plugin-vue6.0.0-beta.6 [Github]

当然,如果希望尝试 Vue 3,目前的状态也已经满足。因为框架的大多数部分组件都处于 beta 或 alpha 状态,而内核也已经进行了广泛的测试,没有发布 RC 的唯一原因是是浏览器开发工具扩展(browser devtool extensions)尚未完成。可参考下面的决策树来对采用 Vue 3 进行相应的评估:

IWantVue3()async function IWantVue3() {await read(`https://github.com/vuejs/rfcs/pulls?q=is%3Apr+is%3Amerged+label%3Acore+-label%3Arevoked+-label%3A2.6+sort%3Acomments-desc`)if (isTrue("I just want to play with Vue 3"))) {// If you just want to try Vue 3 out - you can do it right now with Vite.// Vite (https://github.com/vitejs/vite) is a new dev/build tool that we// created that is lighter, faster and produces smaller bundles. It works// with Vue 3 out of the box.run(`npm init vite-app hello-vue3`)return}if (isTrue("I am planning to use Vue 3 for a new project")) {if (isTrue("I need IE11 support")) {await IE11CompatBuild() // July 2020}if (isTrue("RFCs are too dense, I need an easy-to-read guide")) {await migrationGuide() // July 2020}if (isTrue("I'd rather wait until it's really ready") {await finalRelease() // Targeting early August 2020})run(`npm init vite-app hello-vue3`)return}if (isTrue("I am planning to upgrade an existing Vue 2 project")) {await IE11CompatBuild()await migrationGuide()await ecosystem(// this is the tricky part: if you have an existing, non-trivial Vue 2// app, you likely are using some dependencies that are not yet// Vue-3-compatible, for example meta frameworks like Nuxt, or UI// component libraries like Vuetify. If that's the case, our suggestion// is don't be in a hurry to upgrade. It *will* take some time for the// ecosystem to catch up.// Also note that you can start using Vue Composition API in Vue 2 today// via https://github.com/vuejs/composition-api - we are also going to be// backporting compatible Vue 3 features to 2.x once 3.0 is out.)return}if (isTrue("I am the author of a Vue ecosystem library")) {// It's time to make your lib Vue 3 compatible!return}
}

详情查看 https://github.com/vuejs/rfcs/issues/183

推荐阅读

微软在ARM上成功移植OpenJDK for Win10

Perl 7正在路上,6呢?

Dubbo云原生之路如何走?

PHP 8来了,首个测试版本

运行在浏览器中的深度学习框架,开源了

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

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

相关文章

Mysql@和@@符号的详细使用说明

一、概述 是用户变量,是系统变量。 二、使用语法及实践 用户自定义变量 1、用户定义变量语法 SET var_name expr [, var_name expr] 如:set t1 100; 2、获取用户定义变量值方式,如: select t1 from dual; 如下图 系统变…

探讨NET Core数据进行3DES加密或解密弱密钥问题

【导读】之前写过一篇《探讨.NET Core数据进行3DES加密和解密问题》,最近看到有人提出弱密钥问题,换个强密钥不就完了吗,猜测可能是与第三方对接导致很无奈不能更换密钥,所以产生本文解决.NET Core中3DES弱密钥问题,写…

C++实现表达式树

代码如下: #include <iostream> #include <string> #include <stack> #include <queue> using namespace std;class Tree { private:class Node{public:char val;Node * left;Node *right;Node(char val):val(val),left(nullptr),right(nullptr){}Nod…

redis大幅性能提升之使用管道(PipeLine)和批量(Batch)操作

前段时间在做用户画像的时候&#xff0c;遇到了这样的一个问题&#xff0c;记录某一个商品的用户购买群&#xff0c;刚好这种需求就可以用到Redis中的Set&#xff0c;key作为productID&#xff0c;value就是具体的customerid集合&#xff0c;后续的话&#xff0c;我就可以通过p…

IDEA如何在包下建立子包

idea如何在包下建立子包 第一次在包下建立子包时候出现了问题 在java > springmvc包下再new上一个package controller的时候就会出现这个样子 如何解决 在IDEA2019 中的Show Options Menu下有一个Compacket Middle Packages将它关闭即可 解决成功

.NET Core微服务开发选项

微服务开发的关注点有哪些&#xff1f;微服务构最终的目标是实现业务的价值&#xff0c;交付&#xff0c;为了让开发人员更加关注业务开发和交付&#xff0c;微服务需要一些比较底层的基础设置&#xff0c;我们也称为微服务公共关注点。配置管理&#xff1a;对微服务可变参数进…

gRPC真要取代WebApi了,你还学得过来吗?

今年1月份微软曾宣布要实验性的对.NET支持 gRPC-Web&#xff0c;然后在6月份已经正式发布了。这些天尝试了下&#xff0c;真的很强大&#xff0c;不负责任的预言下&#xff0c;RESTful的时代即将过去&#xff0c;而gRPC要成为革命者&#xff01;先别急眼&#xff0c;下面我来详…

Spring5 jar包下载

下载地址 https://repo.spring.io/simple/libs-release-local/org/springframework/spring/ Spring5最新版本的下载 选择最新版本5.2.3 下载前两项&#xff0c;解压放入文件夹中 项目中导包 ps&#xff1a;我使用的开发工具是idea 第一步&#xff1a;在file中选择project st…

优化 Azure 成本,实现财务目标

点击上方蓝字关注“汪宇杰博客”原文&#xff1a;Omar Khan General Manager, Microsoft Azure翻译&#xff1a;汪宇杰导语我们的许多客户都面临着如何满足关键 IT 项目的资金需求的困难决策。我们在此共同帮助您实现财务目标。确保 Azure 工作负载的成本得到优化有助于释放资金…

采用config方式灵活配置我们的Quarz.net中的Job,Trigger

经常在项目中遇到定时任务的时候&#xff0c;通常第一个想到的是Timer定时器&#xff0c;但是这玩意功能太弱鸡&#xff0c;实际上通常采用的是专业化的第三方调度框架&#xff0c;比如说Quartz&#xff0c;它具有功能强大和应用的灵活性&#xff0c;我想使用过的人都非常了解&…

对于任给的一张无向带权连通图,求出其最小生成树(C++)

对于任给的一张无向带权连通图&#xff0c;求出其最小生成树。 题目要求: (1)编程创建一幅图 (2)输出创建的图 (3)编写Prim算法代码&#xff0c;实现图的最小生成树求解&#xff0c;且输出最小生成树 (4)编写Kruskal算法代码&#xff0c;实现图的最小生成树求解&#xff0c;且…

使用.Net Core实现的一个图形验证码

SimpleCaptcha是一个使用简单&#xff0c;基于.Net Standard 2.0的图形验证码模块。它的灵感来源于Edi.Wang的这篇文章https://edi.wang/post/2018/10/13/generate-captcha-code-aspnet-core&#xff0c;我将其中生成验证码的代码抽取出来进行封装得到了这个模块。下面介绍一下…

Maven编译项目时报错:不再支持源选项 5。请使用 6 或更高版本。 不再支持目标选项 1.5。请使用 1.6 或更高版本。

在使用Maven编译项目时报错&#xff1a; 不再支持源选项 5。请使用 6 或更高版本。 不再支持目标选项 1.5。请使用 1.6 或更高版本。 在项目pom.xml文件中增加maven编译的jdk版本设置&#xff0c;maven.compiler.source和maven.compiler.target&#xff1a; <properties&…

ABP框架 v3.0 已发布!

我们很高兴地宣布,ABP框架和ABP商业版3.0版已经发布.与常规的2周发布一个版本不同的是, 这个版本用了4周的时间.关闭了119个issue,合并了89个pull request 和主框架仓库中的798次提交.由于这是一个主要版本,它也包括了一些重大更改.不要害怕,这些变化都容易对应,并且下面会详细…

C++实现dijkstra单源最短路径

代码如下: #include <iostream> using namespace std; const int N 30; typedef char ElemType; const double noEdge 99999;class Graph { private:double G[N][N];int vertexN, edgeN;double dist[N];bool vis[N];int path[N];int sv;ElemType data[N];int findMinD…

WPF 框架全构建环境虚拟机硬盘分享

现在 WPF 完全开源了&#xff0c;咱可以构建自己私有的版本。我分享一个虚拟机硬盘给你&#xff0c;只要你下载下来&#xff0c;通过 VMWare 导入&#xff0c;即可无需任何配置&#xff0c;拿到一个能构建 WPF 官方源代码的全构建环境。可以用来只做你的定制版的 WPF 框架现在 …

基于.NetCore3.1搭建项目系列 —— 使用Swagger做Api文档 (下篇)

前言回顾上一篇文章《使用Swagger做Api文档 》&#xff0c;文中介绍了在.net core 3.1中&#xff0c;利用Swagger轻量级框架&#xff0c;如何引入程序包&#xff0c;配置服务&#xff0c;注册中间件&#xff0c;一步一步的实现&#xff0c;最终实现生产自动生产API接口说明文档…

C++ vector容器中用erase函数和迭代器删除重复元素问题分析

第一种写法&#xff1a; #include <iostream> #include <vector> using namespace std;int main() {vector<int>v;v.push_back(888);v.push_back(89);v.push_back(89);v.push_back(89);v.push_back(9999);v.push_back(89);for (std::vector<int>::ite…

基于.NetCore3.1搭建项目系列 —— 使用Swagger做Api文档(上篇)

前言为什么在开发中&#xff0c;接口文档越来越成为前后端开发人员沟通的枢纽呢&#xff1f;随着业务的发张&#xff0c;项目越来越多&#xff0c;而对于支撑整个项目架构体系而言&#xff0c;我们对系统业务的水平拆分&#xff0c;垂直分层&#xff0c;让业务系统更加清晰&…