如何在 JSON 中访问数组并在 Jade 中进行迭代

How to access array within JSON and iterate in Jade

这是我的 json:

{
 "Meals": {
    "title": "All the meals",
    "lunch": ["Turkey Sandwich", "Chicken Quesadilla", "Hamburger and Fries"]
 }
}

我正在尝试将数组传递到我的 jade 视图并将每个数组迭代到 select 下拉列表

这是我的服务器代码:

var express = require('express');
var router = express.Router();
var data = require('../mock/data.json');

var dataLists = Object.keys(data).map(function(value){
  return data[value]
});

/* GET home page. */
router.get('/', function(req, res, next) {  
    res.render('index', { title: 'Express', data: dataLists, dataJSON: data });
});

我玉观我过

!{dataJSON} // This returns [object Object]

有没有办法通过对象键访问数组???

!{dataJSON.Meals.lunch}

使用以下访问 jade 模板的 lunch 数组:

p #{dataJSON.Meals.lunch}

其中 p 是段落标记。


是的,您可以像这样遍历数组:

  form (action="someAction")
   select (name="lunch")
    each val in dataJSON.Meals.lunch
     option (value= val)= val

详情可参考:Iteration in Jade