diff --git a/packages/svelte/src/compiler/migrate/index.js b/packages/svelte/src/compiler/migrate/index.js index 6949be129b..8337431dcf 100644 --- a/packages/svelte/src/compiler/migrate/index.js +++ b/packages/svelte/src/compiler/migrate/index.js @@ -421,7 +421,7 @@ const template = { slot_props += `...${state.str.original.substring(/** @type {number} */ (attr.expression.start), attr.expression.end)}, `; } else if (attr.type === 'Attribute') { if (attr.name === 'name') { - name = /** @type {any} */ (attr.value)[0].data; + name = state.scope.generate(/** @type {any} */ (attr.value)[0].data); } else { const value = attr.value !== true diff --git a/packages/svelte/tests/migrate/samples/slots/input.svelte b/packages/svelte/tests/migrate/samples/slots/input.svelte index c383095f75..e71004fcfe 100644 --- a/packages/svelte/tests/migrate/samples/slots/input.svelte +++ b/packages/svelte/tests/migrate/samples/slots/input.svelte @@ -3,3 +3,5 @@ {#if foo} {/if} + + \ No newline at end of file diff --git a/packages/svelte/tests/migrate/samples/slots/output.svelte b/packages/svelte/tests/migrate/samples/slots/output.svelte index 79ba8f3a97..8bdf9a06c4 100644 --- a/packages/svelte/tests/migrate/samples/slots/output.svelte +++ b/packages/svelte/tests/migrate/samples/slots/output.svelte @@ -1,9 +1,11 @@ {#if foo} - {@render foo?.({ foo, })} -{/if} \ No newline at end of file + {@render foo_1?.({ foo, })} +{/if} + +{@render dashed_name?.()} \ No newline at end of file