news 2026/6/9 4:20:24

Vue Transition/TransitionGroup 核心笔记

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Vue Transition/TransitionGroup 核心笔记

文章目录

  • 核心作用
    • 一、 单元素/组件过渡
    • 二、 列表过渡
    • 三、默认过渡类名(核心)
    • 四、自定义过渡类名(避冲突)
    • 五、CSS核心写法
    • 六、核心区别(必记)

核心作用

Vue内置无需注册的过渡组件,为元素显隐/增删/移动添加平滑动画,避免切换生硬。

一、 单元素/组件过渡

  1. 适用:单个元素/组件的过渡(v-if/v-show/动态组件/key变化场景)
  2. 规则:内部仅能有1个根元素(v-if/v-else/v-else-if切换除外)
  3. 解决重叠:添加 mode=“out-in” ,让旧元素先离开,新元素再进入(唯一支持mode的过渡组件)

二、 列表过渡

  1. 适用:多元素/列表过渡(99%配合v-for使用,设计初衷为列表)
  2. 规则:内部可多个根元素,子元素必须加唯一key(推荐id,禁用索引)
  3. 特性:默认渲染为,可通过 tag 自定义语义标签(如tag=“ul”/“div”)
  4. 注意:不支持mode属性(列表无新旧元素重叠问题)

三、默认过渡类名(核心)

未自定义name时,前缀为 v- ,分进入/离开两个阶段,各3个类名,Vue自动添删:

进入阶段(元素新增/显示)

  • v-enter-from:进入开始状态(初始样式,如opacity:0)
  • v-enter-active:进入过程状态(定义过渡规则:transition时间/曲线)
  • v-enter-to:进入结束状态(最终样式,如opacity:1)

离开阶段(元素删除/隐藏)

  • v-leave-from:离开开始状态(初始样式,如opacity:1)
  • v-leave-active:离开过程状态(同进入,统一定义过渡规则)
  • v-leave-to:离开结束状态(最终样式,如opacity:0)

四、自定义过渡类名(避冲突)

给组件添加 name 属性,替换默认 v- 前缀,解决多过渡样式冲突:

  • 示例:
  • 对应类名:fade-enter-from、fade-leave-active、fade-enter-to等

五、CSS核心写法

css

/* 定义过渡过程:时间+曲线(-active类统一写)/
.xxx-enter-active, .xxx-leave-active {
transition: all 0.5s ease; /
all可指定opacity/transform等具体属性/
}
/
定义开始/结束状态(-from/-to类写样式)/
.xxx-enter-from, .xxx-leave-to {
opacity: 0; /
透明过渡,可叠加位移transform: translateX(30px) */
}

(xxx为默认v-或自定义name前缀)

六、核心区别(必记)

特性
根元素数量 仅1个(v-if系列除外) 多个(适配列表)
mode属性 支持(out-in解决重叠) 不支持
核心使用场景 单元素显隐/切换 列表增删/移动(配合v-for)
key要求 无 子元素必须加唯一key
渲染标签 无自身渲染标签 默认,可通过tag自定义

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/28 13:09:49

好写作AI:期刊审稿政策对AI辅助写作的接纳度与风险防控

从“全面禁止”到“有条件开放”:期刊政策的转型期当研究者按下论文投稿按钮的瞬间,一个关乎稿件命运的新问题日益凸显:期刊的审稿政策,如何审视文中AI参与的痕迹? 从早期部分期刊的“零容忍”禁令,到如今越…

作者头像 李华
网站建设 2026/6/2 13:27:19

AI元人文构想:悬鉴《论马克思对李嘉图政治经济学的批判与超越》

AI元人文构想:悬鉴《论马克思对李嘉图政治经济学的批判与超越》 ——一份关于数字资本主义的元理论批判 岐金兰 与 DeepSeek 摘要 本文以岐金兰提出的“AI元人文构想”理论体系为分析框架,对《论马克思对李嘉图政治经济学的批判与超越》一文进行系统性悬…

作者头像 李华
网站建设 2026/5/28 19:45:32

收藏!大模型入门不踩坑|程序员/小白转行学习全指南

这两年,大模型彻底打破了实验室的壁垒,从高冷的前沿研究成果,走进了每一位程序员、学生、职场转行者的日常工作、学习聊天框,甚至成为了很多人规划职业方向的核心关键词。 不管是私信还是评论区,几乎每天都能收到这样…

作者头像 李华
网站建设 2026/5/30 21:57:38

无法加载 DLL“XXXXXXX.dll”: 找不到指定的模块

今天遇到一个特别的奇怪的问题,昨天运行好好的程序,今天就不行了,总是报错: 无法加载 DLL“XXXXXXX.dll”: 找不到指定的模块。这个dll是fortran语言写的。 deepseek搜了一下解决方案,包括下载depends22_x64看依赖关系…

作者头像 李华
网站建设 2026/6/7 15:38:47

TreeMap、TreeSet与Collections.sort()排序机制揭秘

文章目录 TreeMap、TreeSet与Collections.sort()排序机制揭秘?一、TreeMap与TreeSet:红黑树的奥秘1.1 TreeMap的工作原理1.2 TreeSet的工作原理1.3 Comparable与Comparator的区别1.4 性能比较 二、Collections.sort():排序界的瑞士军刀2.1 Co…

作者头像 李华
网站建设 2026/6/3 20:28:17

从九尾狐AI案例看企业AI培训的技术架构与落地实践

第一章:企业AI培训的技术架构设计 现代企业AI培训需要解决的核心问题是:如何将复杂的AI技术转化为可落地的业务解决方案。九尾狐AI的成功实践为我们提供了一个完整的技术架构参考。 class EnterpriseAI_Training:def __init__(self, training_model, i…

作者头像 李华