2015-06-11 65 views
0

我嘗試使用Dust.js模板引擎與第一hello world頁,它沒有使用{@sep}標記,模板被編譯和產生的輸出,而不是逗號{@sep},{/sep}Dust.js @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可以服務一個過時的文件,所以我嘗試使用直接使用從GitHub最新發布rawgit.com鏈接

http://rawgit.com/linkedin/dustjs/master/dist/dust-full.js

的例子是在這裏:http://jsfiddle.net/5apgp1sf/,它仍然不輸出@sep標籤內容。

出了什麼問題?我看不到逗號,所以我應該去購物眼鏡或提交錯誤報告?

回答

1

好的,我會自己回答這個問題。我在Dustjs的主頁上做了一些研究並發現了它。

這不明顯,即使有像

  • 灰塵核心
  • 塵滿

全包似乎沒有實際包含@sep包定義,即使這是頭版的例子。

因此,導入文件dust-helpers.js爲我解決了這個問題。

+1

核心和完全之間的區別只是編譯器。 – Interrobang