From c627d12f3f1e787a1e5dfee34d0fc13a2f60d152 Mon Sep 17 00:00:00 2001 From: Hayleigh Thompson Date: Tue, 11 Jun 2024 17:47:39 +0100 Subject: :bug: Fixed a bug where attributes were set even when they hadn't changed. --- src/vdom.ffi.mjs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/vdom.ffi.mjs b/src/vdom.ffi.mjs index d4cc117..73d7f08 100644 --- a/src/vdom.ffi.mjs +++ b/src/vdom.ffi.mjs @@ -279,7 +279,7 @@ function createElementNode({ prev, next, dispatch, stack }) { // tell which attributes are mirrored as properties on the DOM node we assume // that all attributes should be set as properties too. else { - if (typeof value === "string") el.setAttribute(name, value); + if (el.getAttribute(name) !== value) el.setAttribute(name, value); if (name === "value" || name === "selected") el[name] = value; // If we're morphing an element we remove this attribute's name from the set // of attributes that were on the previous render so we don't remove it in -- cgit v1.2.3