From: Evan You Date: Fri, 12 Oct 2018 21:42:08 +0000 (-0400) Subject: feat: process certain attrs as properties X-Git-Tag: v3.0.0-alpha.0~1119 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=93d724382ee59a9f2bae259fc17bbde9bc460ef0;p=thirdparty%2Fvuejs%2Fcore.git feat: process certain attrs as properties --- diff --git a/packages/renderer-dom/src/modules/attrs.ts b/packages/renderer-dom/src/modules/attrs.ts index d32f6608e0..3254f0fcba 100644 --- a/packages/renderer-dom/src/modules/attrs.ts +++ b/packages/renderer-dom/src/modules/attrs.ts @@ -1,3 +1,13 @@ +const xlinkNS = 'http://www.w3.org/1999/xlink' + +function isXlink(name: string): boolean { + return name.charAt(5) === ':' && name.slice(0, 5) === 'xlink' +} + +function getXlinkProp(name: string): string { + return isXlink(name) ? name.slice(6, name.length) : '' +} + export function patchAttr( el: Element, key: string, @@ -19,13 +29,3 @@ export function patchAttr( } } } - -const xlinkNS = 'http://www.w3.org/1999/xlink' - -function isXlink(name: string): boolean { - return name.charAt(5) === ':' && name.slice(0, 5) === 'xlink' -} - -function getXlinkProp(name: string): string { - return isXlink(name) ? name.slice(6, name.length) : '' -} diff --git a/packages/renderer-dom/src/patchData.ts b/packages/renderer-dom/src/patchData.ts index be805a54bb..d13e805788 100644 --- a/packages/renderer-dom/src/patchData.ts +++ b/packages/renderer-dom/src/patchData.ts @@ -6,7 +6,9 @@ import { patchDOMProp } from './modules/props' import { patchEvent } from './modules/events' export const onRE = /^on/ -const domPropsRE = /^domProps/ + +// value, checked, selected & muted are always patched as properties +const domPropsRE = /^domProps|^(?:value|checked|selected|muted)$/ export function patchData( el: Element,