防止Jade / Pug在未定义对象时出错

时间:2017-03-01 10:43:26

标签: express pug

有没有办法防止Jade / Pug在喂它(未定义)嵌套对象时抛出错误?每次发生这种情况时,整个页面都会中断,而不是仅仅遗漏那一条缺失的信息。

当前行为:

- foo = undefined
span= foo.bar // Error: Cannot read property 'bar' of undefined, page Breaks

解决方法&期望的行为:

- foo = undefined
if foo
    span= foo.bar // leaves out this span, renders rest of the page 

我希望将这种行为作为标准,而不是每次都检查对象是否存在。特别是对于更深层次的嵌套对象,这非常痛苦。

1 个答案:

答案 0 :(得分:2)

你可以尝试一下好的'三元运算符。

span= foo ? foo.bar : null

据我所知,pug仍将呈现空字符串或空值的元素。您将以<span></span>结束。在li元素的情况下,此功能存在问题;你会获得没有内容的要点。