Quellcode durchsuchen

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

Hitesh Khandelwal vor 3 Jahren
Ursprung
Commit
25f7a16a6e
1 geänderte Dateien mit 5 neuen und 5 gelöschten Zeilen
  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
 const commentRE = /<!--[^]*?-->/gm
 function isComment(item: SSRBufferItem) {
 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()
 }
 }