MCPcopy
hub / github.com/vuejs/core / enter

Function enter

packages/runtime-core/src/components/BaseTransition.ts:411–446  ·  view source on GitHub ↗
(el)

Source from the content-addressed store, hash-verified

409 },
410
411 enter(el) {
412 // prevent enter if leave is in progress
413 if (!isHmrUpdating && leavingVNodesCache[key] === vnode) return
414 let hook = onEnter
415 let afterHook = onAfterEnter
416 let cancelHook = onEnterCancelled
417 if (!state.isMounted) {
418 if (appear) {
419 hook = onAppear || onEnter
420 afterHook = onAfterAppear || onAfterEnter
421 cancelHook = onAppearCancelled || onEnterCancelled
422 } else {
423 return
424 }
425 }
426 let called = false
427 el[enterCbKey] = (cancelled?) => {
428 if (called) return
429 called = true
430 if (cancelled) {
431 callHook(cancelHook, [el])
432 } else {
433 callHook(afterHook, [el])
434 }
435 if (hooks.delayedLeave) {
436 hooks.delayedLeave()
437 }
438 el[enterCbKey] = undefined
439 }
440 const done = el[enterCbKey]!.bind(null, false)
441 if (hook) {
442 callAsyncHook(hook, [el, done])
443 } else {
444 done()
445 }
446 },
447
448 leave(el, remove) {
449 const key = String(vnode.key)

Callers

nothing calls this directly

Calls 3

callAsyncHookFunction · 0.85
delayedLeaveMethod · 0.80
callHookFunction · 0.70

Tested by

no test coverage detected