Длинный, однострочный строковый литерал ES6

Google заполнен сообщениями в блогах и ответами на вопрос, как следует использовать строковые литералы ES6. И почти каждый пост в блоге, подробно объясняющий эту функцию, содержит некоторые сведения о том, как реализовать многострочные строки:

let a = `foo
bar`;

Но я не могу найти никаких подробностей о том, как реализовать длинные строки одной строки, такие как:

let a = `This is a very long single line string which might be used to display assertion messages or some text. It has much more than 80 symbols so it would take more then one screen in your text editor to view it. Hello ${world}`

Любые подсказки или обходные пути или должны ли вы придерживаться строк es3?

Ответ 1

Вы можете перейти к новой строке со строкой, используя \. Символ новой строки (\n) не будет отображаться в самой строке.

let a = `This is a very long single line string which might be used \
to display assertion messages or some text. It has much more than \
80 symbols so it would take more then one screen in your text \
editor to view it. Hello ${world}`

Обратите внимание на то, что вы не отступаете от своей строки, или отступ будет в строке:

let a = `Hello\
         World`;

a === 'Hello         World' // true

Ответ 2

Просто добавьте ответ Gpx: вы можете сохранить отступы эту библиотеку.

import {oneLineTrim} from 'common-tags'

oneLineTrim`
  https://news.com/article
  ?utm_source=designernews.com
`)
// https://news.com/article?utm_source=designernews.com