From 5d7d8e7dce776a123b3c1fdd13d6ebe6d416bb7f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Rene=CC=81=20Koller?= Date: Fri, 30 Dec 2022 11:18:48 +0100 Subject: [PATCH 1/2] Fix for custom transition classes when running in compat mode --- packages/runtime-dom/src/components/Transition.ts | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/runtime-dom/src/components/Transition.ts b/packages/runtime-dom/src/components/Transition.ts index a331c53c235..131cc8de604 100644 --- a/packages/runtime-dom/src/components/Transition.ts +++ b/packages/runtime-dom/src/components/Transition.ts @@ -194,7 +194,7 @@ export function resolveTransitionProps( callHook(hook, [el, resolve]) nextFrame(() => { removeTransitionClass(el, isAppear ? appearFromClass : enterFromClass) - if (__COMPAT__ && legacyClassEnabled) { + if (__COMPAT__ && legacyClassEnabled && legacyAppearFromClass && legacyEnterFromClass) { removeTransitionClass( el, isAppear ? legacyAppearFromClass : legacyEnterFromClass @@ -212,7 +212,7 @@ export function resolveTransitionProps( onBeforeEnter(el) { callHook(onBeforeEnter, [el]) addTransitionClass(el, enterFromClass) - if (__COMPAT__ && legacyClassEnabled) { + if (__COMPAT__ && legacyClassEnabled && legacyEnterFromClass) { addTransitionClass(el, legacyEnterFromClass) } addTransitionClass(el, enterActiveClass) @@ -220,7 +220,7 @@ export function resolveTransitionProps( onBeforeAppear(el) { callHook(onBeforeAppear, [el]) addTransitionClass(el, appearFromClass) - if (__COMPAT__ && legacyClassEnabled) { + if (__COMPAT__ && legacyClassEnabled && legacyAppearFromClass) { addTransitionClass(el, legacyAppearFromClass) } addTransitionClass(el, appearActiveClass) @@ -231,7 +231,7 @@ export function resolveTransitionProps( el._isLeaving = true const resolve = () => finishLeave(el, done) addTransitionClass(el, leaveFromClass) - if (__COMPAT__ && legacyClassEnabled) { + if (__COMPAT__ && legacyClassEnabled && legacyLeaveFromClass) { addTransitionClass(el, legacyLeaveFromClass) } // force reflow so *-leave-from classes immediately take effect (#2593) @@ -243,7 +243,7 @@ export function resolveTransitionProps( return } removeTransitionClass(el, leaveFromClass) - if (__COMPAT__ && legacyClassEnabled) { + if (__COMPAT__ && legacyClassEnabled && legacyLeaveFromClass) { removeTransitionClass(el, legacyLeaveFromClass) } addTransitionClass(el, leaveToClass) From a42f8df3222f2c47c2e98d921f188b166e322882 Mon Sep 17 00:00:00 2001 From: Evan You Date: Wed, 1 Feb 2023 03:14:33 -0500 Subject: [PATCH 2/2] Update Transition.ts --- packages/runtime-dom/src/components/Transition.ts | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/packages/runtime-dom/src/components/Transition.ts b/packages/runtime-dom/src/components/Transition.ts index 131cc8de604..fb2cbe0ce1c 100644 --- a/packages/runtime-dom/src/components/Transition.ts +++ b/packages/runtime-dom/src/components/Transition.ts @@ -194,11 +194,13 @@ export function resolveTransitionProps( callHook(hook, [el, resolve]) nextFrame(() => { removeTransitionClass(el, isAppear ? appearFromClass : enterFromClass) - if (__COMPAT__ && legacyClassEnabled && legacyAppearFromClass && legacyEnterFromClass) { - removeTransitionClass( - el, - isAppear ? legacyAppearFromClass : legacyEnterFromClass - ) + if (__COMPAT__ && legacyClassEnabled) { + const legacyClass = isAppear + ? legacyAppearFromClass + : legacyEnterFromClass + if (legacyClass) { + removeTransitionClass(el, legacyClass) + } } addTransitionClass(el, isAppear ? appearToClass : enterToClass) if (!hasExplicitCallback(hook)) {