handle empty attributes in elements and components. fixes #63

pull/71/head
Rich Harris 8 years ago
parent 8a3f81363d
commit 7b15ff93ac

@ -16,6 +16,13 @@ export default function addComponentAttributes ( generator, node, local ) {
});
}
else if ( attribute.value.length === 0 ) {
local.staticAttributes.push({
name: attribute.name,
value: `''`
});
}
else if ( attribute.value.length === 1 ) {
const value = attribute.value[0];

@ -31,6 +31,18 @@ export default function addElementAttributes ( generator, node, local ) {
}
}
else if ( attribute.value.length === 0 ) {
if ( propertyName ) {
local.init.push( deindent`
${local.name}.${propertyName} = '';
` );
} else {
local.init.push( deindent`
${local.name}.setAttribute( '${attribute.name}', '' );
` );
}
}
else if ( attribute.value.length === 1 ) {
const value = attribute.value[0];

@ -0,0 +1,3 @@
export default {
html: `<div class=""></div>`
};

@ -0,0 +1,3 @@
export default {
html: `<div><p>foo: ''</p></div>`
};

@ -0,0 +1,11 @@
<div>
<Widget foo=''/>
</div>
<script>
import Widget from './Widget.html';
export default {
components: { Widget }
};
</script>
Loading…
Cancel
Save