Polyfill для строк шаблона JavaScript - PullRequest
0 голосов
/ 22 мая 2018

Существуют ли какие-либо полифилы для строк шаблонов javascript, которые используют обратную черту?Я имею в виду код, который выглядит следующим образом:

var textTemplate = `
   <h1>My Template String</h1>
   <p>Some more stuf here...</p>
`;

Я не хочу использовать транспортер, такой как babel, или любые другие инструменты, требующие этапа сборки.Кроме того, движки шаблонов javascript, которые размещают шаблон внутри отдельного тега сценария, также не идеальны для меня.

Мне бы очень хотелось иметь возможность использовать строки шаблона вместе со стандартным кодом ES5 в том же файле.Возможно ли это?

РЕДАКТИРОВАТЬ: мне специально нужны строки шаблона для работы в IE11.Я понимаю, что они уже делают в большинстве других браузеров.Теперь я также знаю, что polyfill не является правильной терминологией для того, что я хочу.

1 Ответ

0 голосов
/ 22 мая 2018

Существуют ли какие-либо полифилы для строк шаблонов javascript, которые используют обратную черту?

Нет.У вас не может быть polyfill для нового синтаксиса Javascript, который имеет обратные черты.Polyfill не может влиять на компиляцию кода или выполнение строки кода.Он может влиять только на вызовы функций во время выполнения.

Решение для нового синтаксиса Javascript заключается в переносе из нового синтаксиса в ES5-совместимый код.

Вы даже не можете создать функцию, которая будет выполнять такой же тип подстановки строк (когда передается обычная строка в кавычках Javascript), потому что реализация функции не будет иметь доступа к переменным локальной области видимости, которые обычно используются вшаблоны backtick.

Существуют другие типы подстановки строк, которые могут быть реализованы в функции, но вы должны передать значения, которые вы хотите заменить (например, sprintf в C и использовать синтаксис, отличный от литералов шаблона).), а не просто использовать имена переменных в строке шаблона.

...