diff --git a/.changeset/thirty-guests-flow.md b/.changeset/thirty-guests-flow.md new file mode 100644 index 0000000000..7eccdb0832 --- /dev/null +++ b/.changeset/thirty-guests-flow.md @@ -0,0 +1,5 @@ +--- +'svelte': patch +--- + +fix: make each items reassignable diff --git a/packages/svelte/src/compiler/phases/3-transform/server/transform-server.js b/packages/svelte/src/compiler/phases/3-transform/server/transform-server.js index 5b0f16db9d..38d986e672 100644 --- a/packages/svelte/src/compiler/phases/3-transform/server/transform-server.js +++ b/packages/svelte/src/compiler/phases/3-transform/server/transform-server.js @@ -1347,7 +1347,7 @@ const template_visitors = { state.init.push(b.const(array_id, b.call('$.ensure_array_like', collection))); /** @type {import('estree').Statement[]} */ - const each = [b.const(item, b.member(array_id, index, true))]; + const each = [b.let(item, b.member(array_id, index, true))]; if (node.context.type !== 'Identifier') { each.push(b.const(/** @type {import('estree').Pattern} */ (node.context), item));