Always keep key in vnode.attrs if it exists

Because vnode.attrs is never null by commit f9e5163
This commit is contained in:
kfule 2024-09-25 20:12:18 +09:00 committed by Claudia Meadows
parent a644d9f7ad
commit 0b8dd459dd
2 changed files with 3 additions and 9 deletions

View file

@ -36,7 +36,6 @@ function execSelector(state, vnode) {
var className = hasClass ? attrs.class : attrs.className
vnode.tag = state.tag
vnode.attrs = {}
if (!isEmpty(state.attrs)) {
var newAttrs = {}
@ -64,12 +63,7 @@ function execSelector(state, vnode) {
if (hasClass) attrs.class = null
for (var key in attrs) {
if (hasOwn.call(attrs, key) && key !== "key") {
vnode.attrs = attrs
break
}
}
vnode.attrs = attrs
return vnode
}

View file

@ -271,7 +271,7 @@ o.spec("hyperscript", function() {
var vnode = m("div", {key:"a"})
o(vnode.tag).equals("div")
o(vnode.attrs).deepEquals({})
o(vnode.attrs).deepEquals({key:"a"})
o(vnode.key).equals("a")
})
o("handles many attrs", function() {
@ -343,7 +343,7 @@ o.spec("hyperscript", function() {
var vnode = m("custom-element", {key:"a"})
o(vnode.tag).equals("custom-element")
o(vnode.attrs).deepEquals({})
o(vnode.attrs).deepEquals({key:"a"})
o(vnode.key).equals("a")
})
o("handles many attrs", function() {