Дорожная карта jQuery jquery-tmpl - PullRequest
5 голосов
/ 14 марта 2012

По какой-то причине плагин для разработки jQuery (jquery-tmpl) приостановлен. Из прочтения статей блога в блоге по этой теме кажется, что либо он будет включен снова в будущем, либо заменен чем-то другим (например, jsRender & jsViews)

Каков будущий способ реализации шаблонов в jQuery? (Использование бета-версии нормально)

Ответы [ 2 ]

5 голосов
/ 16 марта 2012

Долгосрочная стратегия заключается в замене шаблонного плагина на JsRender и JsViews. Оба проекта приближаются к бета-версии. Мое предложение было бы сейчас использовать jquery-шаблоны и затем переключиться на JsRender, когда он выйдет. Синтаксис шаблона аналогичен, поэтому его не должно быть сложно переключать, когда придет время. Кто-то, вероятно, создаст инструмент для автоматического обновления шаблонов ...

Выезд:

https://github.com/BorisMoore/jsviews https://github.com/BorisMoore/jsrender

и

http://www.borismoore.com/2012/03/approaching-beta-whats-changing-in_06.html

1 голос
/ 10 июля 2013

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

Временная шкала для этого проекта выглядит беспорядочно: jQuery-tmpl был бета и сторонним, Microsoft предоставила его в рамках официального проекта jQuery , затем jQuery упал , потому что они чувствовали, что эти официальные плагины разбавляли то, что было в jQuery . В то время полная поддержка шаблонов была в 1.5, но тогда это было не так. Существует страница проекта jQueryUI , но она выглядит довольно мертвой и ничего о шаблонах в любом последующем выпуске jQuery нет.

По сути, любая библиотека шаблонов, которую вы хотите использовать, не имеет никакого отношения к официальной версии jQuery или Microsoft.

Честно говоря, я думаю, JsViews стал полноценной средой MVVM, а не просто плагином для шаблонов. Он выглядит довольно впечатляюще, но это не простой или легкий плагин jQuery или обновление jQuery. -tmpl.

Если вы хотите разрабатывать шаблоны «на будущее», вы увидите, что появятся две широкие схемы использования:

  1. Использовать data-* атрибуты. Примеры включают Knockout (который использует атрибут data-bind, содержащий выражение) и jQuery loadTemplate . Довольно прост в реализации, но ограничен привязками данных, которые могут быть представлены как атрибуты тегов.

  2. Используйте скобки 'усы' - {. Примеры включают JsRender, jQuery-tmpl и Усы . Они более мощные, так как вы можете привязать данные к любому тексту в шаблоне. Они не согласуются друг с другом - JsRender использует {{:, jQuery-tmpl использует ${, Усы используют {{ и т. Д., Но они также имеют различный синтаксис для циклов, если и т. Д.

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

Наконец, есть также опция underscore.js : по умолчанию они используют тот же синтаксис, что и .Net (то есть <%=), но это сбивает с толку разработчиков, IDE и компилятор при их использовании. Net, что делает этот стандарт несовместимым для разработчиков .Net. Вы можете изменить его, чтобы использовать любой синтаксис, который вы хотите, предоставив альтернативное регулярное выражение. Это, пожалуй, самое «будущее» (не меняйте синтаксис, не изменяйте синтаксический анализатор шаблонов), но оно также ограничивает возможности оптимизации и затрудняет поддержку многофункциональных инструментов.

Я думаю, что с таким решением это зависит от контекста. Если вы просто хотите использовать несколько шаблонов в существующем проекте, я думаю, что лучше всего использовать jQuery-tmpl, но планируйте поддерживать его дома с новыми версиями jQuery. Если вы хотите с нуля создать новое приложение, использующее Javascript MVVM, я бы оценил более полные фреймворки, но планирую придерживаться того, что вы выберете.

...