fix(runtime-dom): properly handle style properties with undefined values (#5348)
fix #5322
This commit is contained in:
parent
f4d2c9fc6a
commit
85af139863
@ -37,7 +37,18 @@ describe(`runtime-dom: style patching`, () => {
|
||||
|
||||
it('remove if falsy value', () => {
|
||||
const el = document.createElement('div')
|
||||
patchProp(el, 'style', { color: 'red' }, { color: undefined })
|
||||
patchProp(el, 'style', null, {
|
||||
color: undefined,
|
||||
borderRadius: null
|
||||
})
|
||||
expect(el.style.cssText.replace(/\s/g, '')).toBe('')
|
||||
|
||||
patchProp(
|
||||
el,
|
||||
'style',
|
||||
{ color: 'red' },
|
||||
{ color: null, borderRadius: undefined }
|
||||
)
|
||||
expect(el.style.cssText.replace(/\s/g, '')).toBe('')
|
||||
})
|
||||
|
||||
|
@ -45,6 +45,7 @@ function setStyle(
|
||||
if (isArray(val)) {
|
||||
val.forEach(v => setStyle(style, name, v))
|
||||
} else {
|
||||
if (val == null) val = ''
|
||||
if (name.startsWith('--')) {
|
||||
// custom property definition
|
||||
style.setProperty(name, val)
|
||||
|
Loading…
Reference in New Issue
Block a user