В Javascript, если у меня есть очень длинный тег с литералом шаблона, как мне обернуть его, не вставляя переносы в результирующую строку? - PullRequest
1 голос
/ 17 апреля 2020

Есть много подобных вопросов, но я не понял, как применить их к моей ситуации, поэтому я попытаюсь быть действительно точным c. У меня есть очень длинный тег с литералом шаблона, например;

tag`This is a very long string that will be shown to ${userName}, that is annoying to have all on one line in the codebase.`

Конечно, я не хочу, чтобы в моем коде была длинная строка, поэтому я хотел бы разбить ее. Существует много вариантов разбиения длинного (без тега) литерала шаблона, например, использование +. Я пытался использовать это, но это портит приоритет операции. Если я использую

tag`my` + `string`

, то тег применяется только к my. Если я попробую (с плюсом или без)

tag(`mystring`)

, функциональность тега перестала работать. В качестве проверки работоспособности я открыл консоль браузера и определил:

function myTag(strings) { return `${strings[0]}` }

Если я использовал это как тег с обычным синтаксисом, он выведет строку ввода. Если я использовал парены, он выводит первый символ входной строки. Так что я понятия не имею, что там происходит.

Я могу использовать

tag`my\
string`

Но это не позволяет отступать второй строке, что так же плохо, как длинной.

Учитывая это, я не знаю, как применить методы для разбиения длинного нетегированного литерала шаблона на литеральный теговый шаблон.

В случае, если он окажется релевантным, Я использую функцию t тег из библиотеки ttag .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...