【问题标题】:How can I do an if last item in jade我怎样才能在玉中做最后一项
【发布时间】:2014-10-07 16:22:32
【问题描述】:

正如您从下面看到的,我有一个数组,我想在它运行时从该数组的最后一项中删除 svg。我怎么能在有条件的情况下做到这一点?类似 if last:item else add svg

-navlinks = {"Home":"/Home", "About":"/About", "Store Directory":"/Store-Directory", "Store Page":"/Store-Page", "Events":"/Events",}
ul.navbar-menu
  for val, key in navlinks
    li 
      a(href='#{val}') #{key}
      svg.icon.icon-dots
        use(xlink:href="#icon-dots")

【问题讨论】:

    标签: node.js express pug template-engine


    【解决方案1】:

    问题是,与你所说的相反,navlinks不是Array,而是Object。由于Object 元素没有有数字索引,last 的概念没有多大意义。

    但是,您可以遍历 Object.keys(navlinks),这是一个正确的带有数字索引的 Array。所以你可以这样做:

    -navlinks = {"Home":"/Home", "About":"/About", "Store Directory":"/Store-Directory", "Store Page":"/Store-Page", "Events":"/Events",}
    ul.navbar-menu
      - each key, index in Object.keys(navlinks)
         li 
            a(href='#{val}')= navlinks[key]
            if index < Object.keys(navlinks).length - 1
              svg.icon.icon-dots
                 use(xlink:href="#icon-dots")
    

    【讨论】:

    • 非常感谢。也许在另一个说明中,我可以让它在子菜单中工作吗?例如,商店目录可能有租户和零售商的孩子。
    • 是的,当然。只需将字符串值替换为另一个对象即可。
    猜你喜欢
    • 1970-01-01
    • 2019-09-01
    • 1970-01-01
    • 1970-01-01
    • 2022-11-09
    • 2022-08-19
    • 2018-10-05
    • 1970-01-01
    • 2012-08-18
    相关资源
    最近更新 更多