diff --git a/packages/runtime-vapor/__tests__/component.spec.ts b/packages/runtime-vapor/__tests__/component.spec.ts
index 0d9b26f7a..549402a00 100644
--- a/packages/runtime-vapor/__tests__/component.spec.ts
+++ b/packages/runtime-vapor/__tests__/component.spec.ts
@@ -4,13 +4,11 @@ import {
effect,
setText,
render,
- getCurrentInstance,
ref,
unmountComponent,
} from '../src'
-import type { ComponentInternalInstance } from '../src'
import { afterEach, beforeEach, describe, expect } from 'vitest'
-import { defineComponent, nextTick } from '@vue/runtime-core'
+import { defineComponent } from '@vue/runtime-core'
let host: HTMLElement
@@ -42,7 +40,6 @@ describe('component', () => {
},
})
const instance = render(Comp as any, {}, '#host')
- await nextTick()
expect(host.innerHTML).toBe('
0
')
unmountComponent(instance)
expect(host.innerHTML).toBe('')
diff --git a/packages/runtime-vapor/__tests__/template.spec.ts b/packages/runtime-vapor/__tests__/template.spec.ts
index df7117221..21d7808f4 100644
--- a/packages/runtime-vapor/__tests__/template.spec.ts
+++ b/packages/runtime-vapor/__tests__/template.spec.ts
@@ -1,7 +1,3 @@
-/**
- * @vitest-environment jsdom
- */
-
import { template, fragment } from '../src'
describe('api: template', () => {
diff --git a/packages/runtime-vapor/__tests__/vShow.spec.ts b/packages/runtime-vapor/__tests__/vShow.spec.ts
index 66f5b4b1f..fb1447e33 100644
--- a/packages/runtime-vapor/__tests__/vShow.spec.ts
+++ b/packages/runtime-vapor/__tests__/vShow.spec.ts
@@ -24,26 +24,14 @@ describe('directive: v-show', () => {
function handleClick() {
visible.value = !visible.value
}
- const __returned__ = { visible, handleClick }
- Object.defineProperty(__returned__, '__isScriptSetup', {
- enumerable: false,
- value: true,
- })
- return __returned__
- },
- render(_ctx: any) {
const t0 = template('hello world
')
const n0 = t0()
const {
0: [n1],
1: [n2],
- } = children(n0 as ChildNode)
- withDirectives(n2, [[vShow, () => _ctx.visible]])
- on(
- n1 as HTMLElement,
- 'click',
- (...args) => _ctx.handleClick && _ctx.handleClick(...args),
- )
+ } = children(n0)
+ withDirectives(n2, [[vShow, () => visible.value]])
+ on(n1 as HTMLElement, 'click', (...args) => handleClick(...args))
return n0
},
})
diff --git a/packages/runtime-vapor/src/render.ts b/packages/runtime-vapor/src/render.ts
index e39ace1d0..123c9f5d8 100644
--- a/packages/runtime-vapor/src/render.ts
+++ b/packages/runtime-vapor/src/render.ts
@@ -1,6 +1,5 @@
import { markRaw, proxyRefs } from '@vue/reactivity'
import { type Data } from '@vue/shared'
-
import {
type Component,
type ComponentInternalInstance,
@@ -8,11 +7,8 @@ import {
setCurrentInstance,
unsetCurrentInstance,
} from './component'
-
import { initProps } from './componentProps'
-
import { invokeDirectiveHook } from './directive'
-
import { insert, remove } from './dom'
import { PublicInstanceProxyHandlers } from './componentPublicInstance'
@@ -61,7 +57,9 @@ export function mountComponent(
} else {
block = state as Block
}
- if (block instanceof DocumentFragment) block = Array.from(block.childNodes)
+ if (block instanceof DocumentFragment) {
+ block = Array.from(block.childNodes)
+ }
return (instance.block = block)
})!
invokeDirectiveHook(instance, 'beforeMount')
diff --git a/packages/runtime-vapor/src/scheduler.ts b/packages/runtime-vapor/src/scheduler.ts
index ec9535cab..876e2c45e 100644
--- a/packages/runtime-vapor/src/scheduler.ts
+++ b/packages/runtime-vapor/src/scheduler.ts
@@ -20,7 +20,7 @@ function flush() {
queued = undefined
}
-export const nextTick = (fn: any) => p.then(fn)
+export const nextTick = (fn?: any) => (fn ? p.then(fn) : p)
export function effect(fn: any) {
let run: () => void