Просмотр исходного кода

chore(runtime-vapor): improve Teleport tree-shaking with duck typing

daiwei 3 месяцев назад
Родитель
Сommit
da6ddaca32
1 измененных файлов с 5 добавлено и 1 удалено
  1. 5 1
      packages/runtime-vapor/src/components/Teleport.ts

+ 5 - 1
packages/runtime-vapor/src/components/Teleport.ts

@@ -334,10 +334,14 @@ export class TeleportFragment extends VaporFragment {
   }
 }
 
+/**
+ * Use duck typing to check for VaporTeleport instead of direct reference
+ * to VaporTeleportImpl, allowing tree-shaking when Teleport is not used.
+ */
 export function isVaporTeleport(
   value: unknown,
 ): value is typeof VaporTeleportImpl {
-  return value === VaporTeleportImpl
+  return !!(value && (value as any).__isTeleport && (value as any).__vapor)
 }
 
 function locateTeleportEndAnchor(