**两个div进行transition过度,结果发现无效的解决方法**

本文详细介绍了Vue中的transition组件,用于实现元素和组件的进入/离开过渡效果,包括v-enter、v-leave等6个阶段的class切换。Vue为了性能会复用已有元素,当元素标签相同但需区分时,可使用key属性。理解这一机制对于优化Vue应用的过渡动画至关重要。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

首先,我们得先知道一个基础前提。
1、Vue 提供了 transition 的封装组件,这个组件里边可以给任何元素和组件添加进入/离开过渡,在进入/离开的过渡中,会有 6 个 class 切换。
(具体可参考:https://cn.vuejs.org/v2/guide/transitions.html)

官方给的图是这样的:
在这里插入图片描述换个好看点的(这是在网上找的比较好看的图,fade可以当成v一样去看)
在这里插入图片描述
1)、首先第一任(v-enter/v-leave)会先出现,然后中间消失了,出现了个第二任(v-enter-to/v-leave-to)。
2)、其中有个大哥会一直在(v-enter-active/v-leave-active)。
3)、最后大家都会消失。

2、Vue 会尽可能高效地渲染元素,通常会复用已有元素而不是从头开始渲染。这么做除了使 Vue 变得非常快之外,这也会使Vue为了效率只会替换相同标签内部的内容。

所以当元素(/标签)名相同时,可以用key去区分它们

**这个是没有用key去区别div的!在这里插入图片描述

**这边是插入了key的
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值