Плюсы и минусы изотопных шаблонов (Rails) - PullRequest
4 голосов
/ 27 февраля 2011

Изотоп позволяет писать шаблоны в javascript.Затем эти шаблоны могут быть обработаны либо клиентом (с использованием простого старого javascript), либо на сервере (с использованием Johnson ).

Преимущество заключается в использовании кода DRYer.При обновлении DOM при обновлении ajax или веб-сокета вам не нужно писать новый фрагмент ... просто укажите на тот, который вы уже написали.

Кто-нибудь использовал это?

Ответы [ 3 ]

1 голос
/ 18 марта 2011

Интересно, однако мне пришлось бы попробовать это, и я знаю, что не многие люди делают это, но я на самом деле использую HAML для шаблонирования файлов .js.Хотя по-прежнему существует проблема, о которой упоминает автор, о том, что каждый запрос выполняется на сервере и отправляется обратно в формате html, если только вы не отправляете много килобайт, или у вас действительно очень загруженный сайт, я не думаю, что это такая большая проблема.,

Кроме того, в идеале вам не следует даже отправлять и возвращать html-данные, просто объекты JSON, которые отображаются на странице по вашему запросу ajax.Единственное законное использование, которое я вижу для этого, - это если у вас большой веб-сайт AJAX, например, когда вы загружаете страницу один раз, и вы просто продолжаете выполнять AJAX-запросы на все взаимодействия и JavaScript для управления представлением.

Так что было бы полезно, если бы вы уточнили конечную цель.Это для какого-то внутреннего приложения, где вы управляете пользовательской средой (вы точно знаете, какие браузеры они будут использовать, и что у них будет достаточно быстрых компьютеров, чтобы манипулировать всем этим javascript?) Или это будет приложение, предназначенное для третьего мира,где у людей еще нет ресурсов для использования всего этого причудливого JavaScript.

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

0 голосов
/ 19 апреля 2011

Это кажется плохой идеей. Я считаю, что в приложении Ajax сервер должен отвечать за отображение всего отображаемого текста. Это облегчает работу и концентрирует все в одном месте. JavaScript должен просто получать данные с сервера со всем отображаемым текстом, уже отрисованным, и помещать его в соответствующий объект DOM.

Другими словами, я считаю, что в приложении Ajax необходимость в шаблонизаторе JS сама по себе является запахом дизайна.

Конечно, в JS-приложениях на стороне клиента ситуация иная.

0 голосов
/ 04 апреля 2011

При этом используется Джонсон, который в последний раз я проверял, не работал на Ruby 1.9.Так что это может указывать на незрелость этого конкретного решения.Со временем сообщество придумает что-то, что действительно хорошо работает.

Один из подходов, которые я использовал, - это создание 2 совершенно отдельных шаблонов, но постарайтесь сделать их как можно более похожими, чтобы легко переносить изменения содин другому.

...