没有 Ember.js 可以使用 HTMLbars 吗?

Can HTMLbars be used without Ember.js?

我已经找了一段时间了,每次提到 HTMLbars 都会涉及到 Ember。问题是我想从 Handlebars 迁移到 HTMLbars,但是我的项目有一个自定义框架。如果所有 HTMLbars 都做到了,那么内容将作为 HTML 元素而不是字符串返回,为什么它是 Ember 独占的,有没有人找到解决方法那种排他性。

是的,不用Ember.js也可以,可以在demos or you can dig into tests in HTMLBars repository.

中分析代码

最有趣的代码片段是:

var template = compiler.template(templateSpec);
var env = { dom: new DOMHelper(), hooks: hooks, helpers: {} };
var scope = hooks.createFreshScope();

hooks.bindSelf(env, scope, data);

var dom = render(template, env, scope, { contextualElement: output }).fragment;

output.innerHTML += '<hr><pre><code>' + JSON.stringify(data) + '</code></pre><hr>';
output.appendChild(dom);