您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息
免费发信息
三六零分类信息网 > 大同分类信息网,免费分类信息发布

vue3.0的新特性有哪些

2024/2/18 20:45:01发布22次查看
vue3.0新特性:1、节点打tag;2、事件开缓存;3、响应式proxy;4、composition api;5、新增三个组件fragment、teleport(传送门)和suspense;6、tree shaking等等。
本教程操作环境:windows10系统、vue3.0版、dell g3电脑。
vue3.0新特性
一、节点打tag
静态节点
<span>value</span>
动态节点
<span>{{value}}</span>patchflag
vue3.0底层,会自动识别某个节点是否是动态的,如果是动态的会自动生成标识(不同的动态会有不同的标识对应,如内容文本的动态,或者id的动态),从而在每次更新dom时,直接跳过哪些静态的节点,直接定位到动态的节点,大大节省效率。
二、事件开缓存
一般为一个节点设置了监听时间,每次页面进行更新,就会重新生成新的监听函数,启用了cachehandlers,就会在第一次更新的时候进行自动识别是否可以缓存,如果可以就进行缓存,这样页面更新就不需要重新生成,尤其是在组件上,极大地减少了子组件的不必要刷新和资源消耗。
三、响应式proxy
proxy(vue3.0) vs object.defineproperty (vue2.0)
1、vue2.0响应式原理
响应化过程需要遍历data,props等,消耗较大
不支持set/map、class、数组等类型
新加或删除属性无法监听
数组响应化需要额外实现
对应的修改语法有限制
2、vue3.0响应式原理:使用es6的proxy来解决这些问题。
通过proxy代理,来拦截对data的一系列的操作。
四、composition api
不要为了composition而composition
提高了代码质量的上限,但它也降低了下限
被定位为高级特性,因为它旨在解决的问题主要出现在大型应用程序中。
我们不打算彻底修改文档来把它用作默认方案。
相关推荐:《vue.js教程》
五、teleport(传送门)
modal、dialog、select、dropdown…
六、fragments
template中不需要用一个p包裹即没必要只有一个根节点,可以多个标签(节点)并列
七、custom renderer api ( createrenderer )
nativescript vue integration underway by @rigor789
users already experimenting w/ webgl custom renderer that can be used alongside a normal vue application(vugel)
weex、vue native、小程序…
八、tree shaking
按需加载
除了保留一些必须的部分如:virtual dom更新算法、响应式系统,其他都是按需加载例如v-model等。
九、suspense
wait on nested async dependencies in a nested tree
works with async setup()
works with aysnc components
可以实现异步加载组件,整个dom会事先在内存中进行虚拟的渲染,此时会等待异步的组件渲染,等所有的组件渲染完成之后,才会渲染到界面dom上去。
十、better typescript support
codebase written in ts w/ auto-generated type definitions
api is the same in js and ts
in fact, code will alse be largely the sametsx support
class component is still supported
十一、踩坑整理
事件
默认自动挂载根节点、废弃xxx.native事件
inheritattrs: false (class, style, events, css scope)
设置不默认挂载到根节点,不过这会导致class等都不会挂载到根节点上
props
组件中设置一下事件属性声明。
新增emits配置
插槽
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-mcvpeqpz-1606459132262)(c:\users\20194\appdata\roaming\typora\typora-user-images\image-20201127104234202.png)]
watch
vue3.0中,可以通过配置flush:“sync“,来使得watch里面的函数和监听的元素值改变一起进行,不再在组件更新后执行。
v-model & .sync
jsx / tsx
1、@ant-design-vue / jsx
原来有的需要通过对象的方式来传属性值,现在新定义了属性,可以直接传
更多编程相关知识,请访问:编程视频!!
以上就是vue3.0的新特性有哪些的详细内容。
大同分类信息网,免费分类信息发布

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录