diff --git a/src/generators/nodes/Element.ts b/src/generators/nodes/Element.ts index 48852c27ea..1b4d9368d8 100644 --- a/src/generators/nodes/Element.ts +++ b/src/generators/nodes/Element.ts @@ -162,6 +162,8 @@ export default class Element extends Node { this.generator.slots.add(slotName); } + if (this.name === 'noscript') return; + const childState = { parentNode: this.var, parentNodes: parentNodes && block.getUniqueName(`${this.var}_nodes`) // if we're in unclaimable territory, i.e. , parentNodes is null @@ -417,6 +419,8 @@ export default class Element extends Node { function toHTML(node: Element | Text) { if (node.type === 'Text') return escapeHTML(node.data); + if (node.name === 'noscript') return ''; + let open = `<${node.name}`; if (node._needsCssAttribute) { diff --git a/test/runtime/samples/noscript-removal/_config.js b/test/runtime/samples/noscript-removal/_config.js new file mode 100644 index 0000000000..d935af9493 --- /dev/null +++ b/test/runtime/samples/noscript-removal/_config.js @@ -0,0 +1,9 @@ +export default { + 'skip-ssr': true, + + html: ` +
foo
+ +
foo
foo
+`, +}; diff --git a/test/runtime/samples/noscript-removal/main.html b/test/runtime/samples/noscript-removal/main.html new file mode 100644 index 0000000000..0cc2155e5d --- /dev/null +++ b/test/runtime/samples/noscript-removal/main.html @@ -0,0 +1,5 @@ + + +
foo
+ +
foo
foo