]> git.ipfire.org Git - thirdparty/vuejs/core.git/commitdiff
wip(vapor): mounted/beforeMounted lifecycle hooks
authorEvan You <evan@vuejs.org>
Thu, 5 Dec 2024 15:19:51 +0000 (23:19 +0800)
committerEvan You <evan@vuejs.org>
Thu, 5 Dec 2024 15:19:51 +0000 (23:19 +0800)
packages/runtime-vapor/src/apiCreateApp.ts
packages/runtime-vapor/src/dom/element.ts

index f1112e9a05322d6bd7cb01dad7ee57acc76fbc25..66c16be45bd7d5300883750284f0db0ffd5b957a 100644 (file)
@@ -16,7 +16,7 @@ const mountApp: AppMountFn<ParentNode> = (app, container) => {
     container.textContent = ''
   }
   const instance = createComponent(app._component)
-  insert(instance.block, container)
+  insert(instance, container)
   return instance
 }
 
index 1df04b8a7406273180a91ddbdd6d7a3502da131b..5c8171b8fc433f6a19253397f1ee9e2d7d79604f 100644 (file)
@@ -1,4 +1,4 @@
-import { isArray } from '@vue/shared'
+import { invokeArrayFns, isArray } from '@vue/shared'
 import { renderEffect } from '../renderEffect'
 import { setText } from './prop'
 import { type Block, normalizeBlock } from '../block'
@@ -12,7 +12,9 @@ export function insert(
   if (block instanceof Node) {
     parent.insertBefore(block, anchor)
   } else if (isVaporComponent(block)) {
+    if (block.bm) invokeArrayFns(block.bm)
     insert(block.block, parent, anchor)
+    if (block.m) invokeArrayFns(block.m)
   } else if (isArray(block)) {
     for (let i = 0; i < block.length; i++) {
       insert(block[i], parent, anchor)