Я начинаю переносить некоторые задачи генерации html с серверной инфраструктуры на клиент. Я использую JQuery на клиенте. Моя цель - получить данные JSON через API REST и использовать эти данные для заполнения HTML-страниц.
Прямо сейчас, когда пользователь на моем сайте нажимает ссылку на Мои проекты , сервер генерирует HTML следующим образом:
<dl>
<dt>Clean Toilet</dt>
<dd>Get off your butt and clean this filth!</dd>
<dt>Clean Car</dt>
<dd>I think there's something growing in there...</dd>
<dt>Replace Puked on Baby Sheets</dt>
</dl>
Я изменяю это так, что нажатие Мои проекты теперь будет выполнять запрос GET, который возвращает что-то вроде этого:
[
{
"name":"Clean Car",
"description":"I think there's something growing in there..."
},
{
"name":"Clean Toilets",
"description":"Get off your butt and clean this filth!"
},
{
"name":"Replace Puked on Baby Sheets"
}
]
Я, конечно, могу написать собственный код jQuery, чтобы взять этот JSON и сгенерировать из него HTML. Это не мой вопрос, и мне не нужен совет, как это сделать.
То, что я хотел бы сделать, это полностью отделить представление и макет от логики (код jquery). Я не хочу создавать элементы DL, DT и DD с помощью кода jQuery. Я бы предпочел использовать какие-то шаблоны HTML, в которые я могу заполнить данные. Эти шаблоны могут быть просто фрагментами HTML, которые скрыты на странице, с которой было загружено приложение. Или они могут быть динамически загружены с сервера (для поддержки пользовательских макетов, i18n и т. Д.). Они могут отображаться один раз, а также позволяют повторять и повторять. Возможно, он должен поддерживать под-шаблоны, если / то / еще, и т. Д.
У меня есть МНОГО списков и контента на моем сайте, которые представлены различными способами. Я пытаюсь создать простой и последовательный способ создания и отображения контента без создания собственного кода jQuery для каждой функции на моем сайте. Для меня это означает, что мне нужно найти или построить небольшой фреймворк поверх jQuery (возможно, как плагин), который отвечает этим требованиям.
Единственный тип фреймворка, который я нашел, это что-то вроде этого: jTemplates . Я не знаю, насколько это хорошо, так как я еще не использовал его. На первый взгляд, я не в восторге от синтаксиса шаблонов.
Кто-нибудь знает другие фреймворки или плагины, на которые мне стоит обратить внимание? Какие-нибудь посты в блоге или другие ресурсы, которые обсуждают такие вещи? Я просто хочу удостовериться, что я все там осмотрел, прежде чем сам его строить.
Спасибо!