我尝试在使用mustache.js时从单独的文件加载部分内容,但事实证明这很困难。 PHP实现使这很容易,但在JS方面并没有那么多。
我已浏览过文档但无法找到与此相关的任何内容,只使用对象作为部分内容而不是文件。
这里有某种伪代码来解释我想要做的事情。
$.Mustache.load('/mustaches.php', function () {
var item = { thing: 'one' };
var partial = 'partials/actions.mustache';
$('.container').mustache(
'main_mustache',
{item: item},
partial
);
});
因此,我希望能够将辅助文件作为部分文件加载,并将其包含在要使用的模板中,这样我就不必在我使用的所有不同模板中复制代码。
像Blaze这样的东西,我可以使用{{> templateName}}
导入模板,但使用Mustache.js似乎并不那么容易。
如果Mustache无法做到这一点,您会推荐其他哪些图书馆?
答案 0 :(得分:1)
您可以使用小胡子加载这两个模板,然后将其中一个(部分)传递给应该呈现部分的模板。请注意,为了使其工作,在要呈现部分的小胡子中,变量名称应该包含在三重花括号中,以告诉小胡子它应该是html:
<div>
<h1>This is my title</h1>
{{{partial}}}
</div>
然后:
$('.container').mustache(
'main_mustache',
{item: item, partial: partial},
);