File tree Expand file tree Collapse file tree 1 file changed +12
-18
lines changed
packages/svelte/src/compiler/phases Expand file tree Collapse file tree 1 file changed +12
-18
lines changed Original file line number Diff line number Diff line change @@ -471,26 +471,20 @@ class Evaluation {
471471 }
472472
473473 case 'TemplateLiteral' : {
474- const expressions = expression . expressions . map ( ( expr ) => scope . evaluate ( expr ) ) ;
475- const all_are_known = expressions . every ( ( evaluated ) => evaluated . is_known ) ;
476- if ( all_are_known ) {
477- let res = '' ;
478- let quasi_index = 0 ;
479- let expr_index = 0 ;
480- let last_quasi = false ;
481- for ( let i = 0 ; i < expressions . length + expression . quasis . length ; i ++ ) {
482- if ( last_quasi ) {
483- const expression = expressions [ expr_index ++ ] ;
484- res += expression . value ;
485- } else {
486- res += expression . quasis [ quasi_index ++ ] . value . raw ;
487- }
488- last_quasi = ! last_quasi ;
474+ let result = expression . quasis [ 0 ] . value . cooked ;
475+
476+ for ( let i = 0 ; i < expression . expressions . length ; i += 1 ) {
477+ const e = scope . evaluate ( expression . expressions [ i ] ) ;
478+
479+ if ( e . is_known ) {
480+ result += e . value + expression . quasis [ i + 1 ] . value . cooked ;
481+ } else {
482+ this . values . add ( STRING ) ;
483+ break ;
489484 }
490- this . values . add ( res ) ;
491- } else {
492- this . values . add ( STRING ) ;
493485 }
486+
487+ this . values . add ( result ) ;
494488 break ;
495489 }
496490
You can’t perform that action at this time.
0 commit comments