diff --git a/src/runtime/internal/dom.ts b/src/runtime/internal/dom.ts index f563f6d099da..3cf2ca7c4849 100644 --- a/src/runtime/internal/dom.ts +++ b/src/runtime/internal/dom.ts @@ -185,7 +185,7 @@ export function append_hydration(target: NodeEx, node: NodeEx) { } else { target.actual_end_child = node.nextSibling; } - } else if (node.parentNode !== target) { + } else if (node.parentNode !== target || node.nextSibling !== null) { target.appendChild(node); } } diff --git a/test/runtime/samples/key-block-post-hydrate/_config.js b/test/runtime/samples/key-block-post-hydrate/_config.js new file mode 100644 index 000000000000..e989d678e948 --- /dev/null +++ b/test/runtime/samples/key-block-post-hydrate/_config.js @@ -0,0 +1,19 @@ +export default { + html: ` +