|
|
@@ -1,11 +1,12 @@
|
|
|
import { makeMap } from '../../../shared/util'
|
|
|
|
|
|
+const isEnumeratedAttr = makeMap('contenteditable,draggable,spellcheck')
|
|
|
const isBooleanAttr = makeMap(
|
|
|
'allowfullscreen,async,autofocus,autoplay,checked,compact,controls,declare,' +
|
|
|
- 'default,defaultchecked,defaultmuted,defaultselected,defer,disabled,draggable,' +
|
|
|
+ 'default,defaultchecked,defaultmuted,defaultselected,defer,disabled,' +
|
|
|
'enabled,formnovalidate,hidden,indeterminate,inert,ismap,itemscope,loop,multiple,' +
|
|
|
'muted,nohref,noresize,noshade,novalidate,nowrap,open,pauseonexit,readonly,' +
|
|
|
- 'required,reversed,scoped,seamless,selected,sortable,spellcheck,translate,' +
|
|
|
+ 'required,reversed,scoped,seamless,selected,sortable,translate,' +
|
|
|
'truespeed,typemustmatch,visible'
|
|
|
)
|
|
|
|
|
|
@@ -27,6 +28,8 @@ function updateAttrs (oldVnode, vnode) {
|
|
|
} else {
|
|
|
elm.setAttribute(key, key)
|
|
|
}
|
|
|
+ } else if (isEnumeratedAttr(key)) {
|
|
|
+ elm.setAttribute(key, cur == null ? 'false' : 'true')
|
|
|
} else {
|
|
|
elm.setAttribute(key, cur)
|
|
|
}
|