Установка и использование клиентских шаблонизаторов
Я нахожусь в процессе создания базы данных веб-сайта. В настоящее время я создаю различные веб-страницы. Для моих результатов поиска я хотел бы использовать шаблонизатор на стороне клиента. Я не использовал один раньше и у меня есть быстрый вопрос:
Я вижу, что многие из шаблонизаторов (больше всего я исследовал Handlebars.js и dust.js) должны быть установлены в командной строке (в отличие от простого включения в качестве библиотеки, такой как jQuery). В то время как я в настоящее время разрабатываю для Mac с использованием MAMP и могу установить их локально, означает ли это, что мне также нужно будет установить его на общедоступный сервер, на котором будет работать веб-приложение, когда оно будет работать?
Я задавался вопросом, необходима ли установка для компилятора, и вы просто загружаете предварительно скомпилированные шаблоны, которые не требуют дополнительного кода / установки.
Если бы кто-то мог уточнить, это было бы очень полезно.
1 ответ
Вам не нужно устанавливать шаблонизатор локально, чтобы иметь возможность использовать их. На самом деле, использование шаблонизаторов в клиенте может быть сделано двумя разными способами, насколько я знаю:
Компиляция и рендеринг на лету
Вы скачиваете простой файл шаблона (.hbs
, .dust
, .mustache
и т. д.) через AJAX или поместите их в середину HTML, например, используя <script type="text/template">...</script>
Затем вы передаете его в двигатель compile()
а также render()
функции. Двигатель .js
файл должен быть включен в вашу страницу.
Это хорошо для среды разработки, но плохо для производственных случаев.
Предварительно скомпилированные шаблоны, а затем рендеринг
Вы загружаете предварительно скомпилированный шаблон (.js
файл с функцией, которая будет возвращать HTML) через AJAX, а затем вызвать ваш движок render()
функция.
Это противоположность вышеописанной методике, и вам потребуется установить библиотеку engine каким-либо образом локально, чтобы вы могли предварительно скомпилировать их перед началом работы.
Кроме того, вам может не понадобиться включать lib движка на вашу страницу, в зависимости от того, как движок компилирует ваш шаблон.