HAML-светильники с жасмином - PullRequest
16 голосов
/ 16 февраля 2011

Можно ли использовать приборы haml в сочетании с jasmine-jquery?

Я не очень доволен созданием большого количества статических html-приспособлений, потому что все мои представления написаны на хамле. Так что мне нужно было бы не только создать много дублирующего кода, но и переписать (уже дублированный) код в HTML. Двойная боль.

Есть предложения? Лучшие практики? Кто-нибудь работал с Jasmine-JQuery и светильниками?

1 Ответ

9 голосов
/ 21 марта 2011

Да.Есть 3 пути, о которых я знаю:

  1. Создайте приборы вручную, как вы делаете сейчас.Это может быть похоже на повторяющийся код.Плюсы в том, что это довольно просто (и интуитивно понятно, так как многие начинают с этого).В долгосрочной перспективе я думаю, что это хорошо, если это поможет вам уменьшить связь между вашей разметкой и вашими скриптами jQuery.Я обнаружил, что использование этого метода побудило меня выяснить простейшую разметку, необходимую для моего кода jQuery.

  2. Это, вероятно, ответ, который вы ищете. СгенерированоСветильники из ваших haml шаблонов. Этот пост в блоге проведет вас через один метод, но Google может показать вам еще немного.Это хорошо, потому что вы гарантированно синхронизируете код haml и JS.Недостатком является то, что это некоторая сложность, которая может - и не может - пойти не так.

  3. Все мои недавние проекты пошли дальше и устранили все, кроме самой базовой зависимости от созданногоразметки.Мои шаблоны обычно выводят один <div> вместе с некоторыми атрибутами данных на странице, и Javascript создает для меня все элементы DOM (вместо haml). Шаблоны на основе Javascript облегчают это.Тесты Jasmine довольно просты, и тестирование обычно можно проводить без приборов, используя var $dom = $('<div>'); в качестве всего прибора.Если вам все равно придется иметь дело с данными на клиенте, это, как мне кажется, в целом проще.

...