diff --git a/src/runtime/internal/ssr.ts b/src/runtime/internal/ssr.ts index 646a81d817..0e03afb0db 100644 --- a/src/runtime/internal/ssr.ts +++ b/src/runtime/internal/ssr.ts @@ -128,7 +128,7 @@ export function create_ssr_component(fn) { } export function add_attribute(name, value, boolean) { - if (value == null || (boolean && !value)) return ''; + if (value == null || (boolean && !value && value !== 0)) return ''; return ` ${name}${value === true ? '' : `=${typeof value === 'string' ? JSON.stringify(escape(value)) : `"${value}"`}`}`; } diff --git a/test/server-side-rendering/samples/bindings-zero/_expected.html b/test/server-side-rendering/samples/bindings-zero/_expected.html new file mode 100644 index 0000000000..c243e358ff --- /dev/null +++ b/test/server-side-rendering/samples/bindings-zero/_expected.html @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/test/server-side-rendering/samples/bindings-zero/main.svelte b/test/server-side-rendering/samples/bindings-zero/main.svelte new file mode 100644 index 0000000000..6b4c606b13 --- /dev/null +++ b/test/server-side-rendering/samples/bindings-zero/main.svelte @@ -0,0 +1,6 @@ + + + +