[英]Using multiple pre-compiled templates with Handlebars .js (multiple HTTP requests)?
[英]Loading pre-compiled Handlebar templates in Node JS server side
是否有使用handlebars.js加載預編譯模板的協議NPM模塊或者必須提供自己的“getTemplate”函數來加載特定模板?
以下失敗,無法讀取未定義的屬性'hello'。
var compiledTemplate = handlebars.templates['hello'];
“hello.handlebars”是模板文件的名稱。
而這個工作正常。
var template = fs.readFileSync(“./hello.html", "utf8");
var uncompiledTemplate = handlebars.compile(template);
var data = {message : "Hello world!"};
var finalPageHTML = uncompiledTemplate(data);
所以我需要什么才能執行
compiledTemplate(data)
並將我的最終HTML模擬到未編譯的版本?
謝謝。
我發現了一個適合我的解決方案。 我的模板目錄中有一個名為list.handlebars的模板:
<ul>
<li>{{title}}</li>
</ul>
然后,我運行此命令:
handlebars -c handlebars templates -f dist/templates.js && echo module.exports = templates; >> dist/templates.js
'-c把手'標志前置需要(“把手”); 到輸出。
然后,在我的服務器代碼中,我使用:
var template = require('./dist/templates');
console.log(template['list']({title: 'winner'}));
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.