Skip to content

Commit 5882a0e

Browse files
committed
transition: onEnter -> enter, onLeave -> leave, onAppear -> appear (ref #3172)
1 parent 7827593 commit 5882a0e

File tree

2 files changed

+22
-23
lines changed

2 files changed

+22
-23
lines changed

src/platforms/web/runtime/modules/transition.js

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -51,17 +51,16 @@ export function enter (vnode: VNodeWithData) {
5151

5252
const {
5353
css,
54-
appear,
5554
enterClass,
5655
enterActiveClass,
5756
appearClass,
5857
appearActiveClass,
5958
beforeEnter,
60-
onEnter,
59+
enter,
6160
afterEnter,
6261
enterCancelled,
6362
beforeAppear,
64-
onAppear,
63+
appear,
6564
afterAppear,
6665
appearCancelled
6766
} = resolveTransition(data, vnode.context)
@@ -74,7 +73,7 @@ export function enter (vnode: VNodeWithData) {
7473
const startClass = isAppear ? appearClass : enterClass
7574
const activeClass = isAppear ? appearActiveClass : enterActiveClass
7675
const beforeEnterHook = isAppear ? (beforeAppear || beforeEnter) : beforeEnter
77-
const enterHook = isAppear ? (onAppear || onEnter) : onEnter
76+
const enterHook = isAppear ? (typeof appear === 'function' ? appear : enter) : enter
7877
const afterEnterHook = isAppear ? (afterAppear || afterEnter) : afterEnter
7978
const enterCancelledHook = isAppear ? (appearCancelled || enterCancelled) : enterCancelled
8079

@@ -130,14 +129,14 @@ export function leave (vnode: VNodeWithData, rm: Function) {
130129
leaveClass,
131130
leaveActiveClass,
132131
beforeLeave,
133-
onLeave,
132+
leave,
134133
afterLeave,
135134
leaveCancelled,
136135
delayLeave
137136
} = resolveTransition(data, vnode.context)
138137

139138
const expectsCSS = css !== false
140-
const userWantsControl = onLeave && onLeave.length > 2
139+
const userWantsControl = leave && leave.length > 2
141140
const cb = el._leaveCb = once(() => {
142141
if (expectsCSS) {
143142
removeTransitionClass(el, leaveActiveClass)
@@ -172,7 +171,7 @@ export function leave (vnode: VNodeWithData, rm: Function) {
172171
}
173172
})
174173
}
175-
onLeave && onLeave(el, vm, cb)
174+
leave && leave(el, vm, cb)
176175
if (!expectsCSS && !userWantsControl) {
177176
cb()
178177
}

test/unit/features/transition/transition.spec.js

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -126,8 +126,8 @@ if (!isIE9) {
126126
})
127127

128128
it('inline transition object', done => {
129-
const onEnter = jasmine.createSpy('enter')
130-
const onLeave = jasmine.createSpy('leave')
129+
const enter = jasmine.createSpy('enter')
130+
const leave = jasmine.createSpy('leave')
131131
const vm = new Vue({
132132
template: `<div><div v-if="ok" class="test" :transition="{
133133
name: 'inline',
@@ -139,8 +139,8 @@ if (!isIE9) {
139139
data: { ok: true },
140140
transitions: {
141141
inline: {
142-
onEnter,
143-
onLeave
142+
enter,
143+
leave
144144
}
145145
}
146146
}).$mount(el)
@@ -150,15 +150,15 @@ if (!isIE9) {
150150
vm.ok = false
151151
waitForUpdate(() => {
152152
expect(vm.$el.children[0].className).toBe('test bye byebye active')
153-
expect(onLeave).toHaveBeenCalled()
153+
expect(leave).toHaveBeenCalled()
154154
}).thenWaitFor(nextFrame).then(() => {
155155
expect(vm.$el.children[0].className).toBe('test byebye active')
156156
}).thenWaitFor(duration + 10).then(() => {
157157
expect(vm.$el.children.length).toBe(0)
158158
vm.ok = true
159159
}).then(() => {
160160
expect(vm.$el.children[0].className).toBe('test hello hello-active')
161-
expect(onEnter).toHaveBeenCalled()
161+
expect(enter).toHaveBeenCalled()
162162
}).thenWaitFor(nextFrame).then(() => {
163163
expect(vm.$el.children[0].className).toBe('test hello-active')
164164
}).thenWaitFor(duration + 10).then(() => {
@@ -167,8 +167,8 @@ if (!isIE9) {
167167
})
168168

169169
it('transition with JavaScript hooks', done => {
170-
const onLeaveSpy = jasmine.createSpy('onLeave')
171-
const onEnterSpy = jasmine.createSpy('onEnter')
170+
const onLeaveSpy = jasmine.createSpy('leave')
171+
const onEnterSpy = jasmine.createSpy('enter')
172172
const beforeLeaveSpy = jasmine.createSpy('beforeLeave')
173173
const beforeEnterSpy = jasmine.createSpy('beforeEnter')
174174
const afterLeaveSpy = jasmine.createSpy('afterLeave')
@@ -184,14 +184,14 @@ if (!isIE9) {
184184
expect(el.className).toBe('test')
185185
beforeLeaveSpy(el, vm)
186186
},
187-
onLeave: (el, vm) => onLeaveSpy(el, vm),
187+
leave: (el, vm) => onLeaveSpy(el, vm),
188188
afterLeave: (el, vm) => afterLeaveSpy(el, vm),
189189
beforeEnter: (el, vm) => {
190190
expect(vm.$el.contains(el)).toBe(false)
191191
expect(el.className).toBe('test')
192192
beforeEnterSpy(el, vm)
193193
},
194-
onEnter: (el, vm) => onEnterSpy(el, vm),
194+
enter: (el, vm) => onEnterSpy(el, vm),
195195
afterEnter: (el, vm) => afterEnterSpy(el, vm)
196196
}
197197
}
@@ -234,10 +234,10 @@ if (!isIE9) {
234234
data: { ok: true },
235235
transitions: {
236236
test: {
237-
onEnter: (el, vm, cb) => {
237+
enter: (el, vm, cb) => {
238238
next = cb
239239
},
240-
onLeave: (el, vm, cb) => {
240+
leave: (el, vm, cb) => {
241241
next = cb
242242
}
243243
}
@@ -276,8 +276,8 @@ if (!isIE9) {
276276
transitions: {
277277
test: {
278278
css: false,
279-
onEnter: enterSpy,
280-
onLeave: leaveSpy
279+
enter: enterSpy,
280+
leave: leaveSpy
281281
}
282282
}
283283
}).$mount(el)
@@ -301,8 +301,8 @@ if (!isIE9) {
301301
data: { ok: true },
302302
transitions: {
303303
nope: {
304-
onEnter: enterSpy,
305-
onLeave: leaveSpy
304+
enter: enterSpy,
305+
leave: leaveSpy
306306
}
307307
}
308308
}).$mount(el)

0 commit comments

Comments
 (0)