Преглед изворни кода

perf(ssr): improve isComment check (#6078)

Hitesh Khandelwal пре 3 година
родитељ
комит
25f7a16a6e
1 измењених фајлова са 5 додато и 5 уклоњено
  1. 5 5
      packages/server-renderer/src/helpers/ssrRenderSlot.ts

+ 5 - 5
packages/server-renderer/src/helpers/ssrRenderSlot.ts

@@ -87,11 +87,11 @@ export function ssrRenderSlotInner(
   }
 }
 
+const commentTestRE = /^<!--.*-->$/s
 const commentRE = /<!--[^]*?-->/gm
 function isComment(item: SSRBufferItem) {
-  return (
-    typeof item === 'string' &&
-    commentRE.test(item) &&
-    !item.replace(commentRE, '').trim()
-  )
+  if (typeof item !== 'string' || !commentTestRE.test(item)) return false
+  // if item is '<!---->' or '<!--[-->' or '<!--]-->', return true directly
+  if (item.length <= 8) return true
+  return !item.replace(commentRE, '').trim()
 }