【问题标题】:Pug increase the number 'inside' array namePug 增加数字 'inside' 数组名
【发布时间】:2021-10-11 08:57:05
【问题描述】:

我正在使用 PUG,我有如下数组

-let filter0 = ['Category', 'Brand', 'Price', 'Color']
-let filter1 = ['Category 1', 'Category 2', 'Category 3']
-let filter2 = ['Brand 1', 'Brand 2']
-let filter3 = ['Price 1', 'Price 2']
-let filter4 = ['Color 1', 'Color 2']

filter0 定义了我的头衔。

其余的 (filter#) 定义每个标题的子类别。

我想在每个循环中增加与类名相同的数组名。

each val, index in filter0
  input(class='toggle' id='toggle'+index type='checkbox')
  label.title(for='toggle'+index)
    = val
  .content
    each val, index in filter1 // This should be filter+index so the result can be filter1,filter2 etc.
      ul
        li
          input(class='checkbox' id='checkbox-'+index type='checkbox' value='value'+index)
          label(for='checkbox-'+index)= val

这可能吗?谢谢!

【问题讨论】:

  • 你的第一个循环使用val,index。第二个循环也使用val,index。更改变量名。
  • @AminTaghikhani 是的,但是如何增加数组名称的数量?
  • 最好使用object,每个数组存储为key:value,然后可以创建对象key并访问数组。

标签: javascript pug


【解决方案1】:

对于出于某种原因可能想要查看解决方案的任何人:P 谢谢@AminTaghikhani

var filter = {
0: ['Category', 'Brand', 'Price', 'Color'],
1: ['Category 1', 'Category 2', 'Category 3'],
2: ['Brand 1', 'Brand 2'],
3: ['Price 1', 'Price 2'],
4: ['Color 1', 'Color 2']
}
each x, y in filter[0]
  input(class='toggle' id='toggle'+y type='checkbox')
  label.title(for='toggle'+y)
    = x
  .content
    each a, b in filter[1+y]
      ul
        li
          input(class='checkbox' id='checkbox-'+b+y type='checkbox' value='value'+b+y)
          label(for='checkbox-'+b+y)= a

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-07-05
    • 1970-01-01
    • 2020-07-04
    • 2012-11-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-07-02
    相关资源
    最近更新 更多