Procházet zdrojové kódy

chore(runtime-vapor): improve hydration type safety with DynamicFragment typing

daiwei před 3 měsíci
rodič
revize
b8841ea249
1 změnil soubory, kde provedl 12 přidání a 3 odebrání
  1. 12 3
      packages/runtime-vapor/src/dom/hydration.ts

+ 12 - 3
packages/runtime-vapor/src/dom/hydration.ts

@@ -23,12 +23,15 @@ import {
   parentNode,
 } from './node'
 import { findBlockNode, remove } from '../block'
+import type { DynamicFragment } from '../fragment'
 
 const isHydratingStack = [] as boolean[]
 export let isHydrating = false
 export let currentHydrationNode: Node | null = null
 
-let _hydrateDynamicFragment: ((frag: any, isEmpty: boolean) => void) | undefined
+let _hydrateDynamicFragment:
+  | ((frag: DynamicFragment, isEmpty: boolean) => void)
+  | undefined
 
 function pushIsHydrating(value: boolean): void {
   isHydratingStack.push((isHydrating = value))
@@ -317,12 +320,18 @@ export function removeFragmentNodes(node: Node, endAnchor?: Node): void {
   }
 }
 
-export function hydrateDynamicFragment(frag: any, isEmpty: boolean): void {
+export function hydrateDynamicFragment(
+  frag: DynamicFragment,
+  isEmpty: boolean,
+): void {
   _hydrateDynamicFragment && _hydrateDynamicFragment(frag, isEmpty)
 }
 
 // Hydrate implementation for DynamicFragment
-function hydrateDynamicFragmentImpl(frag: any, isEmpty: boolean): void {
+function hydrateDynamicFragmentImpl(
+  frag: DynamicFragment,
+  isEmpty: boolean,
+): void {
   // avoid repeated hydration during fallback rendering
   if (frag.anchor) return