【发布时间】:2019-01-26 18:19:02
【问题描述】:
我正在使用express-handlebars 并拥有以下最小模板:
<!DOCTYPE html>
<html>
<body>
{{#if page === 'help'}}YAAAY{{/if}}
</body>
</html>
这无法解析:
Error: C:\Users\mike\myapp\views\error.hbs: Parse error on line 6:
...ody> {{#if page === 'help'}}YAAAY{{/i
---------------------^
我知道车把并不期待 ===,但这不是 if 的重点吗?
如何在把手中使用if 语句?
【问题讨论】:
-
改用
==。 -
Handlerbars 仅用于检查值是真还是假,而不是像在 javascript 中那样,您需要创建自己的帮助器。
-
哇:stackoverflow.com/a/16315366/1225328。老实说,我很想知道他们做出这种“无布尔运算符”选择背后的原因。
-
@sp00m 想通过此链接发布另一个答案或编辑我的答案?认为这在这种情况下非常有帮助;-)
-
@sp00m 有一个
if,它已经不是无逻辑的了。关键是要尽量减少视图中的计算量,因为在模板之外测试该逻辑几乎总是更容易(并且该逻辑有增加的趋势,使其变得更加困难)。
标签: javascript node.js conditional handlebars.js express-handlebars