#1509·nunjucks

如果没有 `else`,则 inline `if` 应返回 `undefined`

作者: romaricpascal创建于 2025年7月14日更新于 2025年7月14日

目前,内联 if 表达式在没有 else 的情况下 会编译为返回一个空字符串。Jinja 的模板文档规定,内联 if 表达式应 返回一个 Undefined 对象。为了与 Jinja 保持一致,Nunjucks 的内联 if 表达式在没有 else 的情况下也应返回 undefined''undefined 都是假值,但某些代码可能需要区分 undefined (没有提供值) 和 '' (提供了一个空字符串)。如果使用 <SOMETHING> if <CONDITION> 进行调用,您会期望返回 undefined,但实际返回的是 '',这种代码很容易出错。

内容来源: mozilla/nunjucks