在html(script或div元素)中定义的hogan模板而不是内联javascript

时间:2012-05-17 22:41:46

标签: mustache icanhaz.js hogan.js

我想将模板引擎从ICanHasMustache)换成Hogan。 ICanHas允许您在脚本块中定义模板。可以用Hogan做到这一点吗?

1 个答案:

答案 0 :(得分:3)

是。这是script标记中的简单模板:

<script id="hogan-tpl" type="text">
    hello {{planet}}
</script>​

这里是从script元素中获取模板所需的最小JavaScript,使用Hogan.js编译模板,并在将其分配给正文的innerHTML之前使用适当的数据进行渲染:

var template = $('#hogan-tpl').html(),
    hello = Hogan.compile(template),
    context = { planet: "world" },
    tpl = hello.render(context);

document.body.innerHTML = tpl;​

Here is it working on jsFiddle