fix(compat): fix custom transition classes in compat mode (#7435)

fix #6253
This commit is contained in:
René Koller 2023-02-01 09:21:50 +01:00 committed by GitHub
parent e64c9ae957
commit efe2efd210
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 10 additions and 8 deletions

View File

@ -195,10 +195,12 @@ export function resolveTransitionProps(
nextFrame(() => { nextFrame(() => {
removeTransitionClass(el, isAppear ? appearFromClass : enterFromClass) removeTransitionClass(el, isAppear ? appearFromClass : enterFromClass)
if (__COMPAT__ && legacyClassEnabled) { if (__COMPAT__ && legacyClassEnabled) {
removeTransitionClass( const legacyClass = isAppear
el, ? legacyAppearFromClass
isAppear ? legacyAppearFromClass : legacyEnterFromClass : legacyEnterFromClass
) if (legacyClass) {
removeTransitionClass(el, legacyClass)
}
} }
addTransitionClass(el, isAppear ? appearToClass : enterToClass) addTransitionClass(el, isAppear ? appearToClass : enterToClass)
if (!hasExplicitCallback(hook)) { if (!hasExplicitCallback(hook)) {
@ -212,7 +214,7 @@ export function resolveTransitionProps(
onBeforeEnter(el) { onBeforeEnter(el) {
callHook(onBeforeEnter, [el]) callHook(onBeforeEnter, [el])
addTransitionClass(el, enterFromClass) addTransitionClass(el, enterFromClass)
if (__COMPAT__ && legacyClassEnabled) { if (__COMPAT__ && legacyClassEnabled && legacyEnterFromClass) {
addTransitionClass(el, legacyEnterFromClass) addTransitionClass(el, legacyEnterFromClass)
} }
addTransitionClass(el, enterActiveClass) addTransitionClass(el, enterActiveClass)
@ -220,7 +222,7 @@ export function resolveTransitionProps(
onBeforeAppear(el) { onBeforeAppear(el) {
callHook(onBeforeAppear, [el]) callHook(onBeforeAppear, [el])
addTransitionClass(el, appearFromClass) addTransitionClass(el, appearFromClass)
if (__COMPAT__ && legacyClassEnabled) { if (__COMPAT__ && legacyClassEnabled && legacyAppearFromClass) {
addTransitionClass(el, legacyAppearFromClass) addTransitionClass(el, legacyAppearFromClass)
} }
addTransitionClass(el, appearActiveClass) addTransitionClass(el, appearActiveClass)
@ -231,7 +233,7 @@ export function resolveTransitionProps(
el._isLeaving = true el._isLeaving = true
const resolve = () => finishLeave(el, done) const resolve = () => finishLeave(el, done)
addTransitionClass(el, leaveFromClass) addTransitionClass(el, leaveFromClass)
if (__COMPAT__ && legacyClassEnabled) { if (__COMPAT__ && legacyClassEnabled && legacyLeaveFromClass) {
addTransitionClass(el, legacyLeaveFromClass) addTransitionClass(el, legacyLeaveFromClass)
} }
// force reflow so *-leave-from classes immediately take effect (#2593) // force reflow so *-leave-from classes immediately take effect (#2593)
@ -243,7 +245,7 @@ export function resolveTransitionProps(
return return
} }
removeTransitionClass(el, leaveFromClass) removeTransitionClass(el, leaveFromClass)
if (__COMPAT__ && legacyClassEnabled) { if (__COMPAT__ && legacyClassEnabled && legacyLeaveFromClass) {
removeTransitionClass(el, legacyLeaveFromClass) removeTransitionClass(el, legacyLeaveFromClass)
} }
addTransitionClass(el, leaveToClass) addTransitionClass(el, leaveToClass)