diff --git a/src/generators/dom/index.js b/src/generators/dom/index.js index 41d95bb584..e256456651 100644 --- a/src/generators/dom/index.js +++ b/src/generators/dom/index.js @@ -167,7 +167,7 @@ export default function dom ( parsed, source, options, names ) { getUniqueName: generator.getUniqueNameMaker() }); - parsed.html.children.forEach( node => generator.visit( node ) ); + parsed.html.children.forEach( node => generator.visit(node) ); generator.addRenderer( generator.pop() ); diff --git a/src/generators/dom/visitors/MustacheTag.js b/src/generators/dom/visitors/MustacheTag.js index 8360a47370..d22bb5c243 100644 --- a/src/generators/dom/visitors/MustacheTag.js +++ b/src/generators/dom/visitors/MustacheTag.js @@ -9,9 +9,12 @@ export default { generator.uses.createText = true; generator.addElement( name, `createText( ${snippet} )`, true ); + generator.current.builders.init.addLine(`var last_${name} = ${snippet}`); generator.current.builders.update.addBlock( deindent` - ${name}.data = ${snippet}; + if (${snippet} !== last_${name}) { + ${name}.data = last_${name} = ${snippet}; + } ` ); } };