vue3新增/变化(一)
生命周期:
vue2 vue3
beforeCreate ----> setup
created ----> setup
beforeMount ----> onBeforeMount
mounted ----> onMounted
created ----> setup
beforeUpdate ----> onBeforeUpdate
updated ----> onUpdated
beforeDestroy ----> onBeforeUnmount
destroyed ----> onUnmounted
activated ----> onActivated
deactivated ----> onDeactivated
errorCaptured ----> onErrorCaptured
----> onRenderTriggered
----> onRenderTracked
新增watchEffect函数
watch函数需要指明监视的属性,并在回调函数中执行。默认情况仅在侦听的源数据变更时才执行回调。也可以加上immediate: true
来使其立即生效
watchEffect不用指明监视哪个属性,监视的回调中用到哪个属性,就监视哪个属性。
//watchEffect所指定的回调中用到的数据只要发生变化,则直接重新执行回调。
watchEffect(() => {
const a1 = sum.value
const a2 = person.age
console.log('watchEffect执行了回调)
})
片段
Vue2中组件必须有一个跟标签。
<template>
<div>
<span></span>
<span></span>
</div>
</template>
Vue3中组件可以没有跟标签,可以直接写多个根节点,内部会将多个标签包含在一个Fragment虚拟元素中
好处:减少标签层级,减小内存占用,提升了渲染性能