如果有条件更改样式 class 值,我可以使用 Jade 吗?使用闪存变量

Can I use a Jade if conditional to change a style class value? Using flash variables

目前,如果登录不成功,我可以毫无问题地收到消息,但如果有任何消息,我想显示 div(这次只是错误消息)

这是代码

    div(class='formPosSize')
        form(action='/auth/login' method='post' autocomplete='off')
          fieldset
            legend.legend Login
            .input
              input(name='username', placeholder='Email', required='')
              span
                i.fa.fa-envelope-o
            .input
              input(type='password',name='password', placeholder='Password', required='')
              span
                i.fa.fa-lock
            button.submit(type='submit')
              i.fa.fa-long-arrow-right


          .feedback(class=message!=="undefined" ? "" : "feederror")
             if(message)   
               |  #{message} 

如果有任何消息,我想将当前反馈样式变量 "display: none and opacity : 0" 更改为 "display: block and opacity : 1" a

反馈 class 只是一个矩形,我想要那里的消息值并显示它是否存在

我也试过了,但是没用

             if(message)  
              .feedback(class=feederror) 
                 |  #{message} 

我还有一个叫 "feederror" 的 class 与反馈相同,但不同之处在于不透明度和显示..

终于修好了!

一个下午输了,但是胜利了!

每当你得到 "message" 变量时,最好检查它的长度而不是检查它是否存在,或者是否为空,或者是否为真:

此代码:

if (message.length > 0)
    div.feederror 
       div #{message}

如果消息变量上有任何内容,则生成此内容:

 <div class="feederror"> 
  <div>Usuario o contraseña incorrectas.</div>
 </div>

如果消息没有任何内容或不存在,它不会生成任何内容。

当您需要显示一个已经设计好的 div 时,它的 class(在我的代码中是 feederror)包含来自 flash 的消息变量。