expect(`Hydration style mismatch`).toHaveBeenWarnedTimes(1)
})
+ test('style mismatch when no style attribute is present', () => {
+ mountWithHydration(`<div></div>`, () =>
+ h('div', { style: { color: 'red' } }),
+ )
+ expect(`Hydration style mismatch`).toHaveBeenWarnedTimes(1)
+ })
+
test('style mismatch w/ v-show', () => {
mountWithHydration(`<div style="color:red;display:none"></div>`, () =>
withDirectives(createVNode('div', { style: 'color: red' }, ''), [
): boolean {
let mismatchType: string | undefined
let mismatchKey: string | undefined
- let actual: any
- let expected: any
+ let actual: string | boolean | null | undefined
+ let expected: string | boolean | null | undefined
if (key === 'class') {
// classes might be in different order, but that doesn't affect cascade
// so we just need to check if the class lists contain the same classes.
}
} else if (key === 'style') {
// style might be in different order, but that doesn't affect cascade
- actual = el.getAttribute('style')
+ actual = el.getAttribute('style') || ''
expected = isString(clientValue)
? clientValue
: stringifyStyle(normalizeStyle(clientValue))