From: Evan You Date: Fri, 27 Nov 2020 19:35:38 +0000 (-0500) Subject: fix(slots): dynamically named slots should be keyed by name X-Git-Tag: v3.0.4~38 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=2ab8c41a1a43952fb229587a9da48d9a1214ab9e;p=thirdparty%2Fvuejs%2Fcore.git fix(slots): dynamically named slots should be keyed by name fix #2535 --- diff --git a/packages/runtime-core/src/helpers/renderSlot.ts b/packages/runtime-core/src/helpers/renderSlot.ts index c20b8a191d..420c4ffc10 100644 --- a/packages/runtime-core/src/helpers/renderSlot.ts +++ b/packages/runtime-core/src/helpers/renderSlot.ts @@ -47,7 +47,7 @@ export function renderSlot( const validSlotContent = slot && ensureValidVNode(slot(props)) const rendered = createBlock( Fragment, - { key: props.key }, + { key: props.key || `_${name}` }, validSlotContent || (fallback ? fallback() : []), validSlotContent && (slots as RawSlots)._ === SlotFlags.STABLE ? PatchFlags.STABLE_FRAGMENT