最全的Vue3.0新特性预览(翻译)
前言
Evan You(尤雨溪)在2018年11月16日早上在 Vue Toronto 的主题演讲中预演了 Vue 3.0的新特性 。利用现代浏览器支持的新功能,Vue 3 将成为我们已经了解和喜爱的 Vue.js 强大的的改进版本。
大概可以分为:
- 更快
- 更小
- 更易于维护
- 更多的原生支持
- 更易于开发使用
完整的PPT请点击:跳转
翻译
更快
1、虚拟 DOM 重写,mounting和patching的速度提高100%
2、更多的编译时的提示来减少运行时的开销
3、组件快速路径+单个调用+子类型检测
- 跳过不必要的条件分支
- JS引擎更容易优化
4、优化插槽的生成
- 确保实例正确的跟踪依赖关系
- 避免不必要的父子组件重新渲染
5、静态树提升
- 跳过修补整棵树,从而降低渲染成本
- 即使多次出现也能正常工作
6、静态属性提升
- 跳过不会改变节点的修补过程,但是它的子组件会保持修补过程
7、内联的事件提升
- 避免因为不同的内联函数标识而导致的不必要的重新渲染
8、基于Proxy的观察者机制,全语言覆盖+更好的性能
- 目前vue使用的是Object.defineProperty 的 getter 和 setter
- 组件实例初始化的速度提高100%
- 使用Proxy节省以前一半的内存开销,加快速度,但是存在低浏览器版本的不兼容
- 为了继续支持 IE11,Vue 3 将发布一个支持旧观察者机制和新 Proxy 版本的构建
更小
- 更友好的tree-shaking
- 新的core runtime 压缩后大概 10kb
更加可维护
- Flow -> TypeScript
- 包的解耦
- 编译器重写
- 可插拔的架构
- 提供更强大的IDE支持来作为基础设施
提供更方便的原生支持
运行时内核也将与平台无关,使得 Vue 可以更容易地与任何平台(例如Web,iOS或Android)一起使用
更方便的开发
- 暴露响应式的api
轻松识别组件重新渲染的原因
提供对TypeScript的支持(TSX)
更友好的warning traces
- 现在包括功能组件
- 可检查的props
- 在更多的警告中提供可用的traces
实验性的 Hooks API
类似react hook的API,详情可以见
实验性的 Time Slicing 支持
当许多组件同时尝试重新渲染时,浏览器都会变得很慢,利用Time Slicing将JS执行分为几部分,此时,用户的交互不会被阻塞
参考
www.css88.com/archives/10…
最后
推荐一下自己的个人公众号:前端精读(每日定时推送一篇前端好文)
最全的Vue3.0新特性预览(翻译)相关推荐
- 老子学不动系列:Vue 3.0 新特性预览
尤大昨天在 Vue Toronto 的主题演讲中预览了 Vue 3 .通过利用现代浏览器支持的新功能,Vue 3 将成为我们已经了解和喜爱的Vue.js 的改进版本. 我们期待的 Vue 3 将会是: ...
- Flink 1.14 新特性预览
简介: 一文了解 Flink 1.14 版本新特性及最新进展 本文由社区志愿者陈政羽整理,内容源自阿里巴巴技术专家宋辛童 (五藏) 在 8 月 7 日线上 Flink Meetup 分享的<Fl ...
- 【Flink】Flink Flink 1.14 新特性预览
1.概述 转载:Flink 1.14 新特性预览 简介: 一文了解 Flink 1.14 版本新特性及最新进展 本文由社区志愿者陈政羽整理,内容源自阿里巴巴技术专家宋辛童 (五藏) 在 8 月 7 日 ...
- Apache Flink Meetup 8.7 深圳站,企业实践 + 1.14 新特性预览
时隔 10 个月,Apache Flink Meetup 又来到了深圳这个与 Flink 契合度很高的城市.正如改革和创新是深圳的标签,Apache Flink 给技术开发者们带来的,也是摒弃旧的 & ...
- Vue3.0新特性及使用方法
1.1创建Vue3.0项目 通过脚手架 vite 安装: npm init vite-app hello-vue3 # OR yarn create vite-app hello-vue3 Vite目 ...
- vue3.0新特性及用法
1.性能上提升1.3-2倍 2.按需加载 和 compsition api(组合api) createApp 在 Vue 3 中,改变全局 Vue 行为的 API 现在被移动到了由新的 createA ...
- Silverlight 5 Beta 新特性预览
MIX11大会昨天刚刚结束.第二天核心Session包含三个部分:Windows phone 7/Silverlight 5 Beta/Kinect for Windows SDK.在整个全程直播中. ...
- php7 str split,PHP7.4新特性预览
虽然PHP 7.4还未发布,但是RFC已经确定了该版本的一些新性.这个版本的改动有点多,有很多实用性功能.发布日期可能在2019年12月左右,但尚待确认.让我们看看有那些地方的改动. 短闭包 RFC ...
- python新特性_Python3.6正式版新特性预览
按照Python官网上的计划,Python3.6正式版期望在2016-12-16号发布,也就是这周五.从去年的5月份开始,Python3.6版本就已经动手开发了,期间也断断续续的发布了4个Alpha版 ...
- input change获取改变之前的值和改变之后的值_使用Vue3.0新特性造轮子 WidgetUI3.0 (Input输入框组件)
我们先看看组件效果图: 基本用法 type属性(type="password") 占位符(placeholder="请输入") 带清除按钮(clear) 输入限 ...
最新文章
- Web前端学习-第三课JavaScript篇
- html js文件域val,js实现文件上传表单域美化特效
- c#调用Matlab的参数传递
- idea去掉无用import类_@Import注解的魅力
- [Python人工智能] 十.Tensorflow+Opencv实现CNN自定义图像分类案例及与机器学习KNN图像分类算法对比
- RMAN删除归档日志不释放问题
- Delphi应用程序在命令行下带参数执行返回命令行提示的问题
- 使用VS2012内建的C++测试架构进行单元测试
- Sharepoint学习笔记—Ribbon系列-- 5. 在Ribbon中添加新控件(针对用户自定义Tab)
- ORACLE HANDBOOK系列之十:字符集、编码以及Oracle的那些事
- 关于body.clientHeight,body.clientWidht获取的不是可视高度的问题
- 企业微信支付提示请在微信客户端打开链接_微信h5支付?
- java获取图片流_JAVA IO流读取图片的问题
- SparkRDD优化(二)之SparkRDD共享变量(广播变量,累加器)
- 透过招股书看知乎的价值投资逻辑
- 进销存设计与分析_库存明细表(14)
- dsp图像处理Prewitt算子边缘检测
- 论文总结3-Sub-center ArcFace: Boosting Face Recognition by Large-scale Noisy Web Faces
- htc android sd卡,【HTC T328W】Android系统中SD卡各文件夹功能详解
- 屏蔽百度搜索结果中的广告
热门文章
- ASP.NET Core部署在IIS上
- SQL Server2012数据库的备份和还原
- 将button改为圆形(swift/oc/xcode/iOS)
- Windows Phone 程序发布过程
- Bret Victor(苹果 UI 设计师):互动的未来不应只在手指上
- Android 调整控件位置和大小(以textView为例,并设置字体与背景颜色)
- cobbler高可用方案
- python面向对象中类对象、实例对象、类变量、实例变量、类方法、实例方法、静态方法...
- python字典按照value进行排序
- 解决Oracle EM 乱码问题