From 280829bf73d58d6b17218b3df9b5e38ee8b7f720 Mon Sep 17 00:00:00 2001 From: edison Date: Thu, 26 Jun 2025 15:34:47 +0800 Subject: [PATCH] fix(runtime-vapor): ensure props are shallow reactive in VDOM component (#13502) --- packages/runtime-vapor/src/vdomInterop.ts | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/packages/runtime-vapor/src/vdomInterop.ts b/packages/runtime-vapor/src/vdomInterop.ts index b916a2c8eb..e277024d73 100644 --- a/packages/runtime-vapor/src/vdomInterop.ts +++ b/packages/runtime-vapor/src/vdomInterop.ts @@ -16,6 +16,7 @@ import { isEmitListener, onScopeDispose, renderSlot, + shallowReactive, shallowRef, simpleSetCurrentInstance, } from '@vue/runtime-dom' @@ -163,7 +164,8 @@ function createVDOMComponent( // overwrite how the vdom instance handles props vnode.vi = (instance: ComponentInternalInstance) => { - instance.props = wrapper.props + // ensure props are shallow reactive to align with VDOM behavior. + instance.props = shallowReactive(wrapper.props) const attrs = (instance.attrs = createInternalObject()) for (const key in wrapper.attrs) { -- 2.47.2