Wrap long template literal line to multiline without creating a new line in the string
If you introduce a line continuation (\
) at the point of the newline in the literal, it won't create a newline on output:
const text = `a very long string that just continues\
and continues and continues`;
console.log(text); // a very long string that just continuesand continues and continues
This is an old one. But it came up. If you leave any spaces in the editor it will put them in there.
if
const text = `a very long string that just continues\
and continues and continues`;
just do the normal + symbol
if
const text = `a very long string that just continues` +
`and continues and continues`;
You could just eat the line breaks inside your template literal.
// Thanks to https://twitter.com/awbjs for introducing me to the idea
// here: https://esdiscuss.org/topic/multiline-template-strings-that-don-t-break-indentation
const printLongLine = continues => {
const text = `a very long string that just ${continues}${''
} and ${continues} and ${continues}`;
return text;
}
console.log(printLongLine('continues'));