gpt4 book ai didi

javascript - 在 Node JS 服务器端加载预编译的 Handlebar 模板

转载 作者:搜寻专家 更新时间:2023-11-01 00:07:49 26 4
gpt4 key购买 nike

是否有使用 handlebars.js NPM 模块加载预编译模板的协议(protocol),或者必须提供自己的“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 handlebars' 标志前置 require("handlebars");到输出。

然后,在我的服务器代码中,我使用:

var template = require('./dist/templates');
console.log(template['list']({title: 'winner'}));

关于javascript - 在 Node JS 服务器端加载预编译的 Handlebar 模板,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28322803/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com