From c4220d647f63f4bc98833ede160e92ca24e0bf88 Mon Sep 17 00:00:00 2001 From: Paul Sauve Date: Mon, 23 Jan 2017 16:09:20 -0600 Subject: [PATCH 1/2] xmlns should be added as an attribute for consistency --- .../dom/visitors/attributes/addElementAttributes.js | 6 ++++++ test/generator/svg-xmlns/_config.js | 4 ++-- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/src/generators/dom/visitors/attributes/addElementAttributes.js b/src/generators/dom/visitors/attributes/addElementAttributes.js index 490d330348..fb549805c5 100644 --- a/src/generators/dom/visitors/attributes/addElementAttributes.js +++ b/src/generators/dom/visitors/attributes/addElementAttributes.js @@ -55,15 +55,21 @@ export default function addElementAttributes ( generator, node, local ) { // static attributes result = JSON.stringify( value.data ); + let addAttribute = false; if ( attribute.name === 'xmlns' ) { // special case // TODO this attribute must be static – enforce at compile time local.namespace = value.data; + addAttribute = true; } else if ( propertyName ) { local.init.addLine( `${local.name}.${propertyName} = ${result};` ); } else { + addAttribute = true; + } + + if (addAttribute) { generator.uses.setAttribute = true; local.init.addLine( `setAttribute( ${local.name}, '${attribute.name}', ${result} );` diff --git a/test/generator/svg-xmlns/_config.js b/test/generator/svg-xmlns/_config.js index 37d94a1609..a3ab702eaf 100644 --- a/test/generator/svg-xmlns/_config.js +++ b/test/generator/svg-xmlns/_config.js @@ -6,7 +6,7 @@ export default { height: 100 }, - html: ``, + html: ``, test ( assert, component, target ) { const svg = target.querySelector( 'svg' ); @@ -16,6 +16,6 @@ export default { assert.equal( rect.namespaceURI, 'http://www.w3.org/2000/svg' ); component.set({ width: 150, height: 50 }); - assert.equal( target.innerHTML, `` ); + assert.equal( target.innerHTML, `` ); } }; From d47fead7ed1474ed6f61cf0ab8b20876e907c955 Mon Sep 17 00:00:00 2001 From: Paul Sauve Date: Tue, 24 Jan 2017 18:45:38 -0600 Subject: [PATCH 2/2] Style fix --- src/generators/dom/visitors/attributes/addElementAttributes.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/generators/dom/visitors/attributes/addElementAttributes.js b/src/generators/dom/visitors/attributes/addElementAttributes.js index e19bf102cc..c91d369b6d 100644 --- a/src/generators/dom/visitors/attributes/addElementAttributes.js +++ b/src/generators/dom/visitors/attributes/addElementAttributes.js @@ -78,7 +78,7 @@ export default function addElementAttributes ( generator, node, local ) { addAttribute = true; } - if (addAttribute) { + if ( addAttribute ) { generator.uses[ helper ] = true; local.init.addLine( `${helper}( ${local.name}, '${name}', ${result} );`