我尝试将Dust.js模板引擎与第一页hello world
一起使用,但它无法使用{@sep}
标记,该模板已编译并产生了输出,但没有逗号{@sep},{/sep}
http://jsfiddle.net/t1qh9abw/
$(document).ready(function () {
var template = "Dust does {#features}{name}{@sep},{/sep}{/features}!"
var compiled = dust.compile(template, "test");
dust.loadSource(compiled);
dust.render("test", {
features: [
{name: "async"},
{name: "helpers"},
{name: "filters"},
{name: "a little bit of logic"},
{name: "and more"}
]
},
function (err, out) {
document.getElementById('container').textContent = out;
});
});
{@sep},{/sep}
似乎什么也没产生,输出是Dust does asynchelpersfiltersa little bit of logicand more!
而示例输出来自实际主页
http://www.dustjs.com/似乎工作正常,这表明我自己的代码或所使用的版本中有些混乱。
然后我认为CDN可能正在提供过时的文件,因此我尝试使用rawgit.com链接直接使用GitHub的最新版本
http://rawgit.com/linkedin/dustjs/master/dist/dust-full.js
示例在这里:http://jsfiddle.net/5apgp1sf/,它仍然不输出
@sep
标记内容。什么地方出了错?我看不到逗号,应该买眼镜还是提交错误报告?
最佳答案
好吧,我会自己回答这个问题。我在Dustjs主页上进行了一些研究,并弄清楚了。
即使有像
尘芯
尘土飞扬
完整的软件包似乎实际上没有包含@sep
定义,即使这是头版示例。
因此,导入文件dust-helpers.js
为我解决了此问题。
关于javascript - Dust.js @sep示例不起作用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30778670/