@@ -14,8 +14,8 @@ export function genSetText(
1414 context : CodegenContext ,
1515) : CodeFragment [ ] {
1616 const { helper } = context
17- const { element, values, generated } = oper
18- const texts = combineValues ( values , context )
17+ const { element, values, generated, jsx } = oper
18+ const texts = combineValues ( values , context , jsx )
1919 return [
2020 NEWLINE ,
2121 ...genCall ( helper ( 'setText' ) , `${ generated ? 'x' : 'n' } ${ element } ` , texts ) ,
@@ -27,29 +27,30 @@ export function genCreateTextNode(
2727 context : CodegenContext ,
2828) : CodeFragment [ ] {
2929 const { helper } = context
30- const { id, values } = oper
30+ const { id, values, jsx } = oper
3131 return [
3232 NEWLINE ,
3333 `const n${ id } = ` ,
3434 ...genCall (
3535 helper ( 'createTextNode' ) ,
36- values && combineValues ( values , context ) ,
36+ values && combineValues ( values , context , jsx ) ,
3737 ) ,
3838 ]
3939}
4040
4141function combineValues (
4242 values : SimpleExpressionNode [ ] ,
4343 context : CodegenContext ,
44+ jsx ?: boolean ,
4445) : CodeFragment [ ] {
4546 return values . flatMap ( ( value , i ) => {
4647 let exp = genExpression ( value , context )
47- if ( getLiteralExpressionValue ( value ) == null ) {
48+ if ( ! jsx && getLiteralExpressionValue ( value ) == null ) {
4849 // dynamic, wrap with toDisplayString
4950 exp = genCall ( context . helper ( 'toDisplayString' ) , exp )
5051 }
5152 if ( i > 0 ) {
52- exp . unshift ( ' + ' )
53+ exp . unshift ( jsx ? ', ' : ' + ' )
5354 }
5455 return exp
5556 } )
0 commit comments