vue3-core/packages/runtime-dom/src/modules/style.ts

22 lines
451 B
TypeScript
Raw Normal View History

import { isString } from '@vue/shared'
export function patchStyle(el: any, prev: any, next: any) {
2018-09-19 23:35:38 +08:00
const { style } = el
if (!next) {
el.removeAttribute('style')
} else if (isString(next)) {
2018-09-19 23:35:38 +08:00
style.cssText = next
} else {
2018-09-25 07:11:14 +08:00
for (const key in next) {
style[key] = next[key]
2018-09-19 23:35:38 +08:00
}
if (prev && !isString(prev)) {
2018-09-19 23:35:38 +08:00
for (const key in prev) {
2018-09-25 07:11:14 +08:00
if (!next[key]) {
2018-09-25 06:51:58 +08:00
style[key] = ''
2018-09-19 23:35:38 +08:00
}
}
}
}
}