diff options
-rw-r--r-- | src/runtime.ffi.mjs | 15 |
1 files 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); + } } } |