2012-08-13 21 views
2

我想使用帶節點的小鬍子,但由於某些原因,偏分量不起作用:我創建了兩個文件,分別位於同一目錄中的app.jstest.mustache。使用package.json文件和npm我已經安裝了該項目的最新版本的鬍子。該文件是這樣的:NodeJS&小鬍子:如何讓部分工作?

app.js:

var mus = require('mustache'); 
console.log(mus.render('test.mustache: {{>test}}')); 

test.mustache:

This is a test 

如果我跑node app.js我希望得到以下的輸出:test.mustache: This is a test,而是我只是得到:test.mustache:

其他小鬍子標籤可以按預期工作,甚至小鬍子的發誓測試也不會報告任何錯誤。

我應該怎麼做才能使其正常工作?

+0

嘗試把一個空間'>' – murgatroid99 2012-08-13 14:04:20

+0

@ murgatroid99後 - 我已經嘗試過,但不起作用。 – Tiddo 2012-08-13 14:11:42

回答

6

使用節點檢查器我用Mustache調試了上面的應用程序。事實證明,鬍鬚不會自動包含部分文件,與manual暗示的內容相反(向下滾動到部分)。相反,您將始終需要手動提供部分作爲渲染方法的第三個參數。

+0

您正在查看的文檔是Mustache規範;不同的實現工作稍有不同,取決於對該環境有意義的內容。在這種情況下,[此實現的文檔](https://github.com/janl/mustache.js#partials)說:「在mustache.js中,partials的對象可以作爲Mustache.render的第三個參數傳遞。該對象應該以部分名稱爲鍵,其值應該是部分文本。「 – 2012-08-13 16:25:26

+2

@BrandonTilley - 我已經看到了這個文檔,但是這個文檔的上面部分和Mustache規範完全一樣,它可能不應該。因此,我認爲它只是遵循規範,但如果您提供了部分參數,它將使用它而不是新文件。所以文檔對此有點不清楚。 – Tiddo 2012-08-13 22:59:37

0

FYI,這個版本Consolidate.js的支持諧音:

整合可以很容易地使用內部Express.js許多模板引擎