]> git.ipfire.org Git - thirdparty/vuejs/core.git/commitdiff
wip(ssr): do not generate commas between statements
authorEvan You <yyx990803@gmail.com>
Mon, 3 Feb 2020 22:56:10 +0000 (17:56 -0500)
committerEvan You <yyx990803@gmail.com>
Mon, 3 Feb 2020 23:31:11 +0000 (18:31 -0500)
packages/compiler-core/src/codegen.ts

index d558ec6510977eaf42b4aa728aeac11968a27b8d..b794f3f82e80346df8d6c319a63ddcfd850e0bd0 100644 (file)
@@ -425,7 +425,8 @@ function genNodeListAsArray(
 function genNodeList(
   nodes: (string | symbol | CodegenNode | TemplateChildNode[])[],
   context: CodegenContext,
-  multilines: boolean = false
+  multilines: boolean = false,
+  comma: boolean = true
 ) {
   const { push, newline } = context
   for (let i = 0; i < nodes.length; i++) {
@@ -438,12 +439,8 @@ function genNodeList(
       genNode(node, context)
     }
     if (i < nodes.length - 1) {
-      if (multilines) {
-        push(',')
-        newline()
-      } else {
-        push(', ')
-      }
+      comma && push(',')
+      multilines && newline()
     }
   }
 }
@@ -511,7 +508,7 @@ function genNode(node: CodegenNode | symbol | string, context: CodegenContext) {
 
     // SSR only types
     case NodeTypes.JS_BLOCK_STATEMENT:
-      !__BROWSER__ && genNodeList(node.body, context, true)
+      !__BROWSER__ && genNodeList(node.body, context, true, false)
       break
     case NodeTypes.JS_TEMPLATE_LITERAL:
       !__BROWSER__ && genTemplateLiteral(node, context)