diff --git a/packages/svelte/src/internal/server/index.js b/packages/svelte/src/internal/server/index.js index 5ccfb7ec8e..913f526d70 100644 --- a/packages/svelte/src/internal/server/index.js +++ b/packages/svelte/src/internal/server/index.js @@ -205,8 +205,10 @@ export function spread_attributes(attrs, css_hash, classes, styles, flags = 0) { if (!ignore_defaults) { if (name === 'defaultvalue') { name = 'value'; + if (attrs[name]) continue; } else if (name === 'defaultchecked') { name = 'checked'; + if (attrs[name]) continue; } } diff --git a/packages/svelte/tests/runtime-runes/samples/form-default-value-from-spread/_config.js b/packages/svelte/tests/runtime-runes/samples/form-default-value-from-spread/_config.js index 83a2575fbf..3808ae6530 100644 --- a/packages/svelte/tests/runtime-runes/samples/form-default-value-from-spread/_config.js +++ b/packages/svelte/tests/runtime-runes/samples/form-default-value-from-spread/_config.js @@ -5,5 +5,6 @@ export default test({ html: ` + ` }); diff --git a/packages/svelte/tests/runtime-runes/samples/form-default-value-from-spread/main.svelte b/packages/svelte/tests/runtime-runes/samples/form-default-value-from-spread/main.svelte index 5a17622bed..7c0ce9cbe3 100644 --- a/packages/svelte/tests/runtime-runes/samples/form-default-value-from-spread/main.svelte +++ b/packages/svelte/tests/runtime-runes/samples/form-default-value-from-spread/main.svelte @@ -4,4 +4,5 @@ - \ No newline at end of file + + \ No newline at end of file