Ответ 1
Угу. Есть 3 пути, о которых я знаю:
-
Создавайте светильники вручную, как сейчас. Это может выглядеть как дубликат кода. Плюсы в том, что это довольно просто (и интуитивно, как многие люди начинают так). В долгосрочной перспективе я думаю, что это хорошо, если это поможет вам уменьшить связь между вашей разметкой и вашими сценариями jQuery. Я обнаружил, что использование этого метода помогло мне разобраться в простейшей разметке, необходимой для моего кода jQuery.
-
Это, вероятно, ответ, который вы ищете. Сгенерированные светильники из ваших шаблонов
haml
. Это сообщение в блоге проведет вас через один метод, но Google может показать вам еще несколько. Это хорошо, потому что вам гарантировано, что код haml и JS синхронизированы. Нижняя сторона заключается в том, что это сложность, которая может... и не ошибается. -
Все мои недавние проекты пошли дальше и устранили все, кроме очень простой зависимости от сгенерированной разметки. Мои шаблоны обычно выводят один
<div>
вместе с некоторыми атрибутами данных на странице, а Javascript строит все элементы DOM для меня (вместо haml). Шаблоны на основе Javascript облегчают это. Тесты Жасмина довольно просты, и тестирование обычно можно выполнить без использования светильников, используя var$dom = $('<div>');
в качестве всего прибора. Если вам все равно придется иметь дело с данными на клиенте, это, я считаю, в целом проще.