From c36593880b8fd6fd79a6e91f5330ca7bd03eb309 Mon Sep 17 00:00:00 2001 From: Hayleigh Thompson Date: Sun, 23 Jul 2023 18:24:46 +0100 Subject: :bug: Fixed bug where attributes would not be removed correctly during patching. --- src/runtime.ffi.mjs | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/src/runtime.ffi.mjs b/src/runtime.ffi.mjs index 1a1af4b..a29055d 100644 --- a/src/runtime.ffi.mjs +++ b/src/runtime.ffi.mjs @@ -91,12 +91,15 @@ function morphElement(prev, curr, ns, parent) { } for (const { name, value: prevValue } of prevAttrs) { - if (!currAttrs.has(name)) prev.removeAttribute(name); - const value = currAttrs.get(name); - - if (value !== prevValue) { - morphAttr(prev, name, value); - currAttrs.delete(name); + if (!currAttrs.has(name)) { + prev.removeAttribute(name); + } else { + const value = currAttrs.get(name); + + if (value !== prevValue) { + morphAttr(prev, name, value); + currAttrs.delete(name); + } } } -- cgit v1.2.3