Составление Эмблемы.js без Эмбера


Я пытаюсь эмблема.js прямо сейчас. Это действительно хорошая обертка руля для написания шаблонов. Однако документы немного тлеют.js и руль.Яш зависит. Я хочу использовать эмблему.js без Ember, но нет никакого реального объяснения о том, как скомпилировать шаблон.

Так что мы можем использовать эмблему.js без Эмбера (или лучше, без зависимости от руля)? Как я делаю это прямо сейчас, у меня есть эта функция для отображения шаблона:

function render(target, tmpl, data) {
    var source   = tmpl.html();
    var template = Emblem.compile(Handlebars, source);
    var result = template(data);

    target.html(result);
}

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

var template = Handlebars.compile(source);

Спасибо за ответы.

1 5

1 ответ:

На самом деле Вы делаете это правильно.

Emblem компилируется до среды выполнения Handlebars, и поэтому вам нужно указать, в какой вариант Handlebars вы хотите компилировать. В вашем случае, поскольку вам не нужна функциональность Ember, вы захотите

Emblem.compile(Handlebars, source);

Если вам нужна поддержка Ember, вам нужно использовать Ember.Вариант руля

Emblem.compile(Ember.Handlebars, source);

Я обязательно добавлю этот материал в документы.