Skip to content

Commit cfa7bdf

Browse files
authored
Fix empty template literal bug (#218)
1 parent 08ad088 commit cfa7bdf

2 files changed

Lines changed: 23 additions & 0 deletions

File tree

packages/ripple/src/compiler/phases/3-transform/index.js

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1290,6 +1290,11 @@ const visitors = {
12901290
return b.binary(node.operator, context.visit(node.left), context.visit(node.right));
12911291
},
12921292

1293+
TemplateLiteral(node, context) {
1294+
const expressions = node.expressions.map(expr => context.visit(expr));
1295+
return b.template(node.quasis, expressions);
1296+
},
1297+
12931298
RenderFragment(node, context) {
12941299
const identifer = node.expression.callee;
12951300

packages/ripple/tests/basic.test.ripple

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -70,6 +70,24 @@ describe('basic', () => {
7070
expect(container.querySelector('div').textContent).toEqual('Hello Ripple');
7171
});
7272

73+
it('render empty string literal', () => {
74+
component Basic() {
75+
<div>{''}</div>
76+
}
77+
78+
render(Basic);
79+
expect(container.querySelector('div').textContent).toEqual('');
80+
});
81+
82+
it('render empty template literal', () => {
83+
component Basic() {
84+
<div>{``}</div>
85+
}
86+
87+
render(Basic);
88+
expect(container.querySelector('div').textContent).toEqual('');
89+
});
90+
7391
it('render dynamic class attribute', () => {
7492
component Basic() {
7593
let $active = false;

0 commit comments

Comments
 (0)