javascript - Handlebars.js:使用部分模板,就像使用普通的完整模板一样

标签 javascript jquery templates handlebars.js

我有一个模板,我想将其用作部分模板,并通过 javascript 单独使用。

最佳答案

如果您的模板是预编译的,您可以通过 Handlebars.partials['partial-name']() 访问您的部分,也可以通过 {{> 从模板中调用它们部分}} 帮助器。

这很好,因为您可以编写一个实用函数来渲染模板,无论它是完整的模板还是部分模板。

例如:

function elementFromTemplate(template, context) {
    context = context || {};
    var temp = document.createElement('div');
    temp.innerHTML = templates[template] ? templates[template](context) : Handlebars.partials[template](context);
    return temp.firstChild;
}

myDiv.appendChild(elementFromTemplate('myPartial', context));

myDiv.appendChild(elementFromTemplate('a-whole-template'));

希望这可以帮助任何像我一样想要使用 Handlebars 的人。

关于javascript - Handlebars.js:使用部分模板,就像使用普通的完整模板一样,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18306382/

相关文章:

javascript - typescript :无法访问继承类构造函数中的成员值

javascript - 区分纯触摸事件和纯手势事件?

javascript - redux thunk - 如何在 Promise 完成后分派(dispatch)嵌套数组中的数据

jquery - 跨浏览器友好,多页面全屏,滚动布局

django - 使用 "escape"标记作为 Django 中的良好安全模式真的是强制性的吗?

c++ - 重组类以从 dll 导出类

javascript - 如何在元素可见时禁用外部点击?

javascript - Bootstrap 日期选择器未在自定义灯箱中打开

javascript - jqPlot 图例溢出 div

c++ - 是否可以在编译时检测以下赋值?