所以这是一个反复出现的问题,并没有在SO上找到另一个例子,所以这里是:
渲染Jade模板时,即使在模板中使用-if(variableName),我也会得到’variableName’未定义.
示例(我将其用作“信息”flash消息的部分内容):
-if(info) - if(info.length){ ul -info.forEach(function(info){ li= info -}) -}
如果没有flash / info消息,则返回’info’未定义,而不是不呈现任何内容.有谁知道我做错了什么?
我知道所提到的typeof(变量)!=’undefined选项.如果我想做类似-if(typeof(req.session.user)!=’undefined’)的事情,我将不得不做3嵌套`if(typeof(req)!=’undefined’.这是我唯一的选择吗?
解决方法
尝试if(typeof info!==“undefined”).
我不太确定,但我认为他们使用将变量注入到视图的范围内.
with({}) { if (foo) { console.log("foo"); // fails foo is not defined. } } with({}) { if (typeof foo !== "undefined") { console.log("foo"); // no error } }