29

Ok, I am getting an associative array from node server and trying to render it in Jade. I obviously need a foreach loop, but nothing seems to work! I tried these both codes:

- foreach row in rows {
    li= row
- }

and

- rows.forEach(function(item)) {
    li= item
- })

the array I am passing is called "rows". Any idea why this is not working? I am getting this error:

500 SyntaxError: Unexpected identifier

and, with the second code:

500 SyntaxError: Unexpected token )
pb2q
  • 58,613
  • 19
  • 146
  • 147

3 Answers3

49

try

each item in rows
    li= item
Sagiv Ofek
  • 25,190
  • 8
  • 60
  • 55
6

Your second example would work except you have a small syntax error in it - an extra parentheses, it should be:

- rows.forEach(function(item) {
  li= item
- })
frontsidebus
  • 120
  • 1
  • 9
2

You can use

ul
  each val, index in ['zero', 'one', 'two']
    li= index + ': ' + val

or

ul
  each val, index in {1:'one',2:'two',3:'three'}
    li= index + ': ' + val

see this link

Mostafa Nawara
  • 782
  • 9
  • 21