首页 > 解决方案 > 基本的“if”语句在车把 JS 中不起作用

问题描述

我正在使用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在车把中使用语句?

标签: javascriptnode.jsconditionalhandlebars.jsexpress-handlebars

解决方案


Handlebarif-helper 只接受一个布尔值作为参数。你有两个选择:

使用现有的处理程序

page === 'help'将结果作为模板中的变量传递并执行以下操作:

{{#if isPageHelp}}
  <h1> Help! </h1>
{{/if}}

制作自己的处理程序

您可以使用自己的处理程序来实现===运算符。谢谢@sp00m


推荐阅读