模板 – 在Jade视图中使用javascript代码 – if(变量)显示undefined而不是传递

前端之家收集整理的这篇文章主要介绍了模板 – 在Jade视图中使用javascript代码 – if(变量)显示undefined而不是传递前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
所以这是一个反复出现的问题,并没有在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
    }
}

猜你在找的Node.js相关文章