diff --git a/packages/core/src/__tests__/__snapshots__/svelte.test.ts.snap b/packages/core/src/__tests__/__snapshots__/svelte.test.ts.snap
index 871e946bb5..374ea64b13 100644
--- a/packages/core/src/__tests__/__snapshots__/svelte.test.ts.snap
+++ b/packages/core/src/__tests__/__snapshots__/svelte.test.ts.snap
@@ -1344,8 +1344,6 @@ exports[`Svelte > jsx > Javascript Test > basicForwardRef 1`] = `
"
@@ -1364,8 +1362,6 @@ exports[`Svelte > jsx > Javascript Test > basicForwardRefMetadata 1`] = `
"
@@ -3691,8 +3687,6 @@ exports[`Svelte > jsx > Typescript Test > basicForwardRef 1`] = `
@@ -3718,8 +3712,6 @@ exports[`Svelte > jsx > Typescript Test > basicForwardRefMetadata 1`] = `
diff --git a/packages/core/src/generators/svelte/svelte.ts b/packages/core/src/generators/svelte/svelte.ts
index 8490b597b0..200db1c25e 100644
--- a/packages/core/src/generators/svelte/svelte.ts
+++ b/packages/core/src/generators/svelte/svelte.ts
@@ -135,13 +135,16 @@ export const componentToSvelte: TranspilerGenerator =
let json = fastClone(component);
json = runPreJsonPlugins(json, options.plugins);
- const refs = Array.from(getRefs(json));
useBindValue(json, options);
gettersToFunctions(json);
const props = Array.from(getProps(json)).filter((prop) => !isSlotProperty(prop));
+ const refs = Array.from(getRefs(json))
+ .map(stripStateAndProps({ json, options }))
+ .filter((x) => !props.includes(x));
+
json = runPostJsonPlugins(json, options.plugins);
const css = collectCss(json);
@@ -276,7 +279,7 @@ export const componentToSvelte: TranspilerGenerator =
${functionsString.length < 4 ? '' : functionsString}
${getterString.length < 4 ? '' : getterString}
- ${refs.map((ref) => `let ${stripStateAndProps({ json, options })(ref)}`).join('\n')}
+ ${refs.map((ref) => `let ${ref}`).join('\n')}
${
options.stateType === 'proxies'