diff --git a/.changeset/dry-parrots-bathe.md b/.changeset/dry-parrots-bathe.md new file mode 100644 index 000000000..8b5b59954 --- /dev/null +++ b/.changeset/dry-parrots-bathe.md @@ -0,0 +1,5 @@ +--- +'svelte': patch +--- + +fix: support contenteditable binding undefined fallback diff --git a/packages/svelte/src/internal/client/dom/elements/bindings/universal.js b/packages/svelte/src/internal/client/dom/elements/bindings/universal.js index 0e825a580..bb00e09da 100644 --- a/packages/svelte/src/internal/client/dom/elements/bindings/universal.js +++ b/packages/svelte/src/internal/client/dom/elements/bindings/universal.js @@ -18,7 +18,7 @@ export function bind_content_editable(property, element, get_value, update) { var value = get_value(); if (element[property] !== value) { - if (value === null) { + if (value == null) { // @ts-ignore var non_null_value = element[property]; update(non_null_value); diff --git a/packages/svelte/tests/runtime-runes/samples/contenteditable-state/Test.svelte b/packages/svelte/tests/runtime-runes/samples/contenteditable-state/Test.svelte new file mode 100644 index 000000000..7aa8b96ac --- /dev/null +++ b/packages/svelte/tests/runtime-runes/samples/contenteditable-state/Test.svelte @@ -0,0 +1,9 @@ + + +
+ {@render children()} +
diff --git a/packages/svelte/tests/runtime-runes/samples/contenteditable-state/_config.js b/packages/svelte/tests/runtime-runes/samples/contenteditable-state/_config.js new file mode 100644 index 000000000..84b0d7863 --- /dev/null +++ b/packages/svelte/tests/runtime-runes/samples/contenteditable-state/_config.js @@ -0,0 +1,5 @@ +import { test } from '../../test'; + +export default test({ + html: `
Test
` +}); diff --git a/packages/svelte/tests/runtime-runes/samples/contenteditable-state/main.svelte b/packages/svelte/tests/runtime-runes/samples/contenteditable-state/main.svelte new file mode 100644 index 000000000..a7ad4c4a0 --- /dev/null +++ b/packages/svelte/tests/runtime-runes/samples/contenteditable-state/main.svelte @@ -0,0 +1,7 @@ + + + + Test +