v-if 和v-show用在组件上时候组件生命周期钩子的变化和渲染转态

在一个页面中使用v-if或者v-show控制组件时候

可以使用v-if控制组件的销毁,而不是v-show 

v-if

初始渲染

初始值为 false 组件不会渲染,生命周期钩子不会执行,v-if 的渲染是惰性的。
初始值为 true 时,组件会进行渲染,并依次执行 beforeCreate,created,beforeMount,mounted 钩子。

切换

false => true
依次执行 beforeCreate,created,beforeMount,mounted 钩子。
true => false
依次执行 beforeDestroy,destroyed 钩子。

v-show

渲染

无论初始状态,组件都会渲染,依次执行 beforeCreate,created,beforeMount,mounted 钩子,v-show 的渲染是非惰性的。

切换

对生命周期钩子无影响,切换时组件始终保持在 mounted 钩子。

 
 
 来自 : https://www.jianshu.com/p/4fc3d2e6611e
posted @ 2022-05-18 19:13  大桥默默学  阅读(582)  评论(0编辑  收藏  举报