【发布时间】:2017-03-01 10:43:26
【问题描述】:
有没有办法防止 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
我希望将这种行为作为标准,而不是每次都检查对象是否存在。尤其是对于更深的嵌套对象,这真的很痛苦。
【问题讨论】:
-
就 JS 的完成方式而言,这是相当标准的,尤其是当你对变量有点混乱时。查看贡献者对此事的看法github.com/pugjs/pug/issues/719。因为 pug 是一个 JS 解释器,所以你获得了很大的权力,但这是你必须处理的权衡之一。再说了,
if varname真的没那么糟糕