Merge pull request #1410 from barneycarroll/allow-verbose-class-attribute-declaration

Allow verbose class attribute declaration
This commit is contained in:
Leo Horie 2016-11-22 00:31:35 -05:00 committed by GitHub
commit d20e8a880f
2 changed files with 7 additions and 1 deletions

View file

@ -19,7 +19,8 @@ function hyperscript(selector) {
else if (match[3][0] === "[") {
var attrValue = match[6]
if (attrValue) attrValue = attrValue.replace(/\\(["'])/g, "$1").replace(/\\\\/g, "\\")
attributes[match[4]] = attrValue || true
if (match[4] === "class") classes.push(attrValue)
else attributes[match[4]] = attrValue || true
}
}
if (classes.length > 0) attributes.className = classes.join(" ")

View file

@ -184,6 +184,11 @@ o.spec("hyperscript", function() {
o(vnode.attrs.className).equals("a")
})
o("handles 'class' as a verbose attribute declaration", function() {
var vnode = m("[class=a]")
o(vnode.attrs.className).equals("a")
})
o("handles merging classes w/ class property", function() {
var vnode = m(".a", {class: "b"})