news 2026/4/3 4:31:23

Vue.js 报错:Invalid transition name: xxx —— 3 分钟让过渡名字「合法化」

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Vue.js 报错:Invalid transition name: xxx —— 3 分钟让过渡名字「合法化」

Vue.js 报错:Invalid transition name: xxx —— 3 分钟让过渡名字「合法化」


正文目录

  1. 报错含义:Vue 在挑剔什么「过渡名字」?
  2. 5 大高频翻车场景 & 修复代码
  3. 万能兜底:合法字符与默认值
  4. 预防 checklist(不再踩坑)
  5. 一句话总结

一、报错含义:Vue 在挑剔什么「过渡名字」?

当你在控制台看到:

Invalid transition name: xxx

Vue 在告诉你:
「你在<transition name="xxx">v-enter/leave类名里用了非法字符或空名字,过渡无法识别。」
本质:过渡名字非法、空、重复或类名不匹配


二、5 大高频翻车场景 & 修复代码

① 名字空或空格

<!-- ❌ 名字空 --> <transition name=""> <div v-if="show">内容</div> </transition> <!-- ❌ 名字空格 --> <transition name=" "> <div v-if="show">内容</div> </transition>

修复:给合法名字

<!-- ✅ 合法名字 --> <transition name="fade"> <div v-if="show">内容</div> </transition>

② 名字非法字符

<!-- ❌ 名字非法字符 --> <transition name="fade@"> <div v-if="show">内容</div> </transition>

修复:合法字符(字母、数字、下划线、连字符)

<!-- ✅ 合法字符 --> <transition name="fade-in"> <div v-if="show">内容</div> </transition>

③ 类名不匹配

<!-- ❌ 类名不匹配 --> <transition name="fade"> <div v-if="show" class="my-fade-enter">内容</div> </transition> <style> .my-fade-enter { opacity: 0; } /* ❌ 类名不匹配 */ </style>

修复:类名匹配过渡名字

<!-- ✅ 类名匹配 --> <transition name="fade"> <div v-if="show">内容</div> </transition> <style> .fade-enter-active, .fade-leave-active { transition: opacity 0.5s; } .fade-enter, .fade-leave-to { opacity: 0; } </style>

④ 动态名字非法字符

<!-- ❌ 动态名字非法字符 --> <transition :name="transitionName"> <div v-if="show">内容</div> </template> <script setup> const transitionName = ref('fade@'); // ❌ 非法字符 </script>

修复:合法字符

consttransitionName=ref('fade-in');// ✅ 合法字符

⑤ 第三方库过渡名字非法

// ❌ 库提供非法名字import{Transition}from'third-party';<Transition name="fade@">...</Transition>

修复:封装或映射合法名字

constlegalName='fade-in';// ✅ 映射合法名字<Transition name={legalName}>...</Transition>

三、万能兜底:合法字符与默认值

场景规则示例
合法字符字母、数字、下划线、连字符fade-in
空名字避免空字符串fade
动态名字变量值为合法字符ref('fade-in')
类名匹配匹配过渡名字.fade-enter-active

四、预防 checklist

  • 过渡名字避免空字符串和空格
  • 过渡名字只用字母、数字、下划线、连字符
  • 类名匹配过渡名字.fade-enter-active
  • 动态名字变量值为合法字符
  • 第三方库映射合法名字
  • 控制台「Invalid transition name」= 立即**合法字符 + 类名匹配」

五、一句话总结

「Invalid transition name」= 名字非法、空、类名不匹配。」
用「合法字符 + 类名匹配 + 空字符串避免」三件套,让过渡名字永远合法,动画立刻生效!


最后问候亲爱的朋友们,并邀请你们阅读我的全新著作

📚 《Vue.js 3企业级项目开发实战(微课视频版》

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

从人工到智能:AI 薪酬管理软件提升企业管理效能的底层逻辑

在企业人力资源管理中&#xff0c;薪酬管理是连接企业与员工的关键环节&#xff0c;其效率与准确性直接影响员工体验和企业运营成本。传统薪酬管理依赖人工核算&#xff0c;不仅流程繁琐、耗时较长&#xff0c;还容易因数据繁杂、规则多变出现误差。随着数字化转型的推进&#…

作者头像 李华
网站建设 2026/3/23 23:54:29

模糊神经网络对123等级负荷进行功率分配

模糊神经网络对123等级负荷进行功率分配~ 供电系统的负荷分级管理总带着点玄学色彩。三级负荷就像三个性格迥异的孩子——一级负荷是必须哄着的祖宗&#xff0c;二级负荷偶尔发点小脾气&#xff0c;三级负荷则是给口吃的就能自己玩。传统分配方法搞起调度来总像拿直尺量曲线&am…

作者头像 李华
网站建设 2026/3/12 21:58:05

Java 基础面试题精选:从语法到集合,高频问题解析

Java 基础面试题精选&#xff1a;从语法到集合&#xff08;2025-2026 高频真实考点&#xff09; 以下内容按出现频率从高到低排列&#xff0c;覆盖了几乎所有大厂&#xff08;阿里、字节、腾讯、美团、京东、华为、拼多多等&#xff09;Java 后端/后端实习/校招一面、二面最常…

作者头像 李华
网站建设 2026/3/20 8:11:08

Ivanti 提醒注意已遭利用的两个 EPMM 漏洞

聚焦源代码安全&#xff0c;网罗国内外最新资讯&#xff01; 编译&#xff1a;代码卫士 Ivanti 披露了位于移动终端管理器 (EPMM) 中的两个严重漏洞CVE-2026-1281和CVE-2026-1340&#xff0c;它们已遭在野利用。 这两个漏洞都是代码注入漏洞&#xff0c;CVSS评分均为9.8&#x…

作者头像 李华
网站建设 2026/3/31 14:17:54

SSM毕设选题推荐:基于ssm的中小学生阅读能力培养系统阅读能力训练平台【附源码、mysql、文档、调试+代码讲解+全bao等】

博主介绍&#xff1a;✌️码农一枚 &#xff0c;专注于大学生项目实战开发、讲解和毕业&#x1f6a2;文撰写修改等。全栈领域优质创作者&#xff0c;博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围&#xff1a;&am…

作者头像 李华