我正在尝试在Nodejs上使用Handlebars。
我可以执行普通变量,但如果我想执行javascript代码输出一些值呢? 在PHP中我们会这样做:
<div>This is formatted date : <?php echo date($oldDate); ?> </div>
nodejs把手中的示例:
<div>This is non formatted date: {{olddate}}</div>
<div>This is formatted date : {{ date(olddate)}}</div>
我知道在EJS模板引擎中我们可以通过放入&lt;%like this
来实现<div>This is formatted date : <% date(olddate)%></div>
感谢您的回答
答案 0 :(得分:1)
Handlebars不支持在模板中执行JavaScript表达式,包括函数调用。这可能是因为它的灵感来自于Mustache的“无逻辑模板,”只添加了少量逻辑。
使用的是helpers:
<div>This is formatted date : {{date olddate}}</div>
并且,它允许您使用Handlebars.registerHelper()
:
Handlerbars.registerHelper('date', function (dateValue) {
return new Date(dateValue).toString();
});