parent
8084156f4d
commit
4492b88938
@ -34,7 +34,15 @@ export const patchProp: RendererOptions<Node, Element>['patchProp'] = (
|
|||||||
patchEvent(el, key, prevValue, nextValue, parentComponent)
|
patchEvent(el, key, prevValue, nextValue, parentComponent)
|
||||||
}
|
}
|
||||||
} else if (
|
} else if (
|
||||||
isSVG
|
// spellcheck and draggable are numerated attrs, however their
|
||||||
|
// corresponding DOM properties are actually booleans - this leads to
|
||||||
|
// setting it with a string "false" value leading it to be coerced to
|
||||||
|
// `true`, so we need to always treat them as attributes.
|
||||||
|
// Note that `contentEditable` doesn't have this problem: its DOM
|
||||||
|
// property is also enumerated string values.
|
||||||
|
key !== 'spellcheck' &&
|
||||||
|
key !== 'draggable' &&
|
||||||
|
(isSVG
|
||||||
? // most keys must be set as attribute on svg elements to work
|
? // most keys must be set as attribute on svg elements to work
|
||||||
// ...except innerHTML
|
// ...except innerHTML
|
||||||
key === 'innerHTML' ||
|
key === 'innerHTML' ||
|
||||||
@ -43,7 +51,7 @@ export const patchProp: RendererOptions<Node, Element>['patchProp'] = (
|
|||||||
: // for normal html elements, set as a property if it exists
|
: // for normal html elements, set as a property if it exists
|
||||||
key in el &&
|
key in el &&
|
||||||
// except native onclick with string values
|
// except native onclick with string values
|
||||||
!(nativeOnRE.test(key) && isString(nextValue))
|
!(nativeOnRE.test(key) && isString(nextValue)))
|
||||||
) {
|
) {
|
||||||
patchDOMProp(
|
patchDOMProp(
|
||||||
el,
|
el,
|
||||||
|
Loading…
Reference in New Issue
Block a user