]> git.ipfire.org Git - thirdparty/vuejs/core.git/commitdiff
types(runtime-core): improve types for transition hook
authorlikui <2218301630@qq.com>
Tue, 21 Apr 2020 04:06:10 +0000 (12:06 +0800)
committerlikui <2218301630@qq.com>
Tue, 21 Apr 2020 04:06:10 +0000 (12:06 +0800)
fix #1000

packages/runtime-core/src/components/BaseTransition.ts
packages/runtime-core/src/vnode.ts

index f643487e8bc2441dba8df3b51509f03c0c9b4939..6fc6411d30e7e9b4f415b234f25e6ffa01443824 100644 (file)
@@ -43,14 +43,14 @@ export interface BaseTransitionProps<HostElement = RendererElement> {
   onLeaveCancelled?: (el: HostElement) => void // only fired in persisted mode
 }
 
-export interface TransitionHooks {
+export interface TransitionHooks<HostElement = RendererElement> {
   persisted: boolean
-  beforeEnter(el: RendererElement): void
-  enter(el: RendererElement): void
-  leave(el: RendererElement, remove: () => void): void
+  beforeEnter(el: HostElement): void
+  enter(el: HostElement): void
+  leave(el: HostElement, remove: () => void): void
   afterLeave?(): void
   delayLeave?(
-    el: RendererElement,
+    el: HostElement,
     earlyRemove: () => void,
     delayedLeave: () => void
   ): void
@@ -270,9 +270,9 @@ export function resolveTransitionHooks(
       )
   }
 
-  const hooks: TransitionHooks = {
+  const hooks: TransitionHooks<TransitionElement> = {
     persisted,
-    beforeEnter(el: TransitionElement) {
+    beforeEnter(el) {
       if (!appear && !state.isMounted) {
         return
       }
@@ -293,7 +293,7 @@ export function resolveTransitionHooks(
       callHook(onBeforeEnter, [el])
     },
 
-    enter(el: TransitionElement) {
+    enter(el) {
       if (!appear && !state.isMounted) {
         return
       }
@@ -318,7 +318,7 @@ export function resolveTransitionHooks(
       }
     },
 
-    leave(el: TransitionElement, remove) {
+    leave(el, remove) {
       const key = String(vnode.key)
       if (el._enterCb) {
         el._enterCb(true /* cancelled */)
index 8f494472ddef46e3c6d76b2f128aac44fc729c2b..07beacc5b85f30c789e60c9d092dd62a47d4a667 100644 (file)
@@ -107,7 +107,7 @@ export interface VNode<HostNode = RendererNode, HostElement = RendererElement> {
   component: ComponentInternalInstance | null
   suspense: SuspenseBoundary | null
   dirs: DirectiveBinding[] | null
-  transition: TransitionHooks | null
+  transition: TransitionHooks<HostElement> | null
 
   // DOM
   el: HostNode | null