Skip to content

Commit 0020061

Browse files
committed
Fix static render function in templates
The list of static render function wasn't generated correctly. Fix #11
1 parent ce8b3ba commit 0020061

File tree

1 file changed

+18
-7
lines changed

1 file changed

+18
-7
lines changed

core/src/main/java/com/axellience/vuegwt/core/template/builder/TemplateImplBuilder.java

Lines changed: 18 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -108,14 +108,25 @@ private void generateGetRenderFunction(Builder templateBuilder,
108108
* @param result The result from compilation using vue-template-compiler
109109
*/
110110
private void generateGetStaticRenderFunctions(Builder templateBuilder,
111-
VueTemplateCompilerResult result)
111+
VueTemplateCompilerResult result)
112112
{
113-
MethodSpec.Builder getStaticRenderFunctionsBuilder = MethodSpec
114-
.methodBuilder("getStaticRenderFunctions")
115-
.addModifiers(Modifier.PUBLIC)
116-
.returns(String[].class)
117-
.addStatement("return new String[] { $L }",
118-
String.join(", ", result.getStaticRenderFunctions()));
113+
CodeBlock.Builder staticFunctions = CodeBlock.builder();
114+
115+
boolean isFirst = true;
116+
for (String staticRenderFunction : result.getStaticRenderFunctions()) {
117+
if (!isFirst) {
118+
staticFunctions.add(", ");
119+
} else {
120+
isFirst = false;
121+
}
122+
staticFunctions.add("$S", staticRenderFunction);
123+
}
124+
125+
MethodSpec.Builder getStaticRenderFunctionsBuilder =
126+
MethodSpec.methodBuilder("getStaticRenderFunctions")
127+
.addModifiers(Modifier.PUBLIC)
128+
.returns(String[].class)
129+
.addStatement("return new String[] { $L }", staticFunctions.build());
119130

120131
templateBuilder.addMethod(getStaticRenderFunctionsBuilder.build());
121132
}

0 commit comments

Comments
 (0)