From d0f4619179af453e939b4466e3a3ee9a996d3cb7 Mon Sep 17 00:00:00 2001 From: jdecroock Date: Tue, 5 Jul 2022 15:42:58 +0200 Subject: [PATCH 1/3] use smarter stringbuilder --- src/index.js | 35 +++++++++++++++-------------------- 1 file changed, 15 insertions(+), 20 deletions(-) diff --git a/src/index.js b/src/index.js index 6c2b24aa..370b09c9 100644 --- a/src/index.js +++ b/src/index.js @@ -85,15 +85,10 @@ function _renderToString(vnode, context, opts, inner, isSvgMode, selectValue) { if (Array.isArray(vnode)) { let rendered = ''; for (let i = 0; i < vnode.length; i++) { - if (pretty && i > 0) rendered += '\n'; - rendered += _renderToString( - vnode[i], - context, - opts, - inner, - isSvgMode, - selectValue - ); + if (pretty && i > 0) rendered = rendered + '\n'; + rendered = + rendered + + _renderToString(vnode[i], context, opts, inner, isSvgMode, selectValue); } return rendered; } @@ -289,7 +284,7 @@ function _renderToString(vnode, context, opts, inner, isSvgMode, selectValue) { opts.attributeHook && opts.attributeHook(name, v, context, opts, isComponent); if (hooked || hooked === '') { - s += hooked; + s = s + hooked; continue; } @@ -303,7 +298,7 @@ function _renderToString(vnode, context, opts, inner, isSvgMode, selectValue) { v = name; // in non-xml mode, allow boolean attributes if (!opts || !opts.xml) { - s += ' ' + name; + s = s + ' ' + name; continue; } } @@ -319,10 +314,10 @@ function _renderToString(vnode, context, opts, inner, isSvgMode, selectValue) { // and the