你如何使用 Jade 在迭代中使用条件?

How do you use conditionals within iterations using Jade?

我试图在一次迭代中定位 1 个元素

http://jade-lang.com/reference/iteration/

each category in categories
    .menu_category
        p= category.category_name

上面是 Jade,它遍历一个名为 categories 的对象。我对此很陌生,但我认为这意味着循环遍历对象。在此之前我使用的是 ejs 并获得与使用他们的 for 循环相同的结果

 for(i=0;i<object.length;i++) 

我相信这是一回事。对吗?

我正在尝试将 class 添加到 div 以获取特定 div 的权利 category_name来自 类别 对象。

所以我正在考虑使用这样的东西:

 if(category.category_name === 'dog')
     // add another class to .menu_category, only to the div that holds 'dog'

Jade 说为了我们的条件,它必须看起来像这样:

if user.description
    h2 Description
    p.description= user.description
else 
    h2 Description
    p.description.

http://jade-lang.com/reference/conditionals/

如何向 div 添加另一个 class,其中包含我在条件中匹配的数据?

迭代工作正常,但试图弄清楚条件如何适合迭代让我抓狂。特别是我遇到的所有缩进问题。我已经尝试了太多的方法在这里向你展示。我不太明白这一点;如果你能帮我把这些点联系起来。

顺便说一句,我去玉石的原因是因为我无法访问app.locals。如果您对此有任何意见,那就太好了。

这可能就是您要找的。这将创建一个 div,其中两个 class 用于一个特定类别,一个 class 用于其他

each category in categories    
    if(category.category_name === 'dog')
        .menu_category.dog_category
    else
        .menu_category
            << rest of your contents here>>