2012-05-05 44 views
0

我試圖使用node.js從文件系統加載模板,但找不到方法。 到目前爲止,我有:Dust.js從Node.js中的文件系統加載模板

exports.index = function(req, res){ 
    var compiled = dust.compile("Hello {name}!", "intro"); 
    dust.loadSource(compiled); 
    dust.render("intro", {name: "Fred"}, function(err, out) { 
     res.write(out); 
     res.close(); 
    }); 
}; 

有沒有一種方法可以代替:「您好(名稱)」有文件名?它應該是HTML還是JS文件? 另外,如果這在渲染模板上不是很好的方式,請告訴我,我是Node.js試圖挑選最佳實踐的新手。

+0

你是不是想用灰塵模板而不是說玉石?如果是這樣,這個鏈接描述與鞏固.js:http://spalatnik.com/blog/?p=54 – Trevor

+0

Thx,特雷弗,這更像是我在找什麼。 – Max

回答

1
fs.readFile(dustFile, function (err, file) { 
    var name = fileName.split(".")[0] 
    var fn = dust.compileFn(file.toString(), name) 
    fn({ name: "fred" }, function (err, out) { 
     res.end(out) 
    }) 
}) 
+0

它看起來有點奇怪,我必須手動訪問文件系統才能獲取模板。希望有一個更抽象的方式來做到這一點。 – Max