2016-03-22 12 views
0

ist mein json iterieren:Wie im JSON-Array zugreifen und hier in Jade

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

Ich versuche, das Array zu meiner Jade Ansicht zu passieren und iterieren jeweils in einer ausgewählten Dropdown

Hier ist mein Server-Code:

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 }); 
}); 

In meiner Jade Ansicht ich gehe

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

Gibt es eine Möglichkeit, über den Objektschlüssel auf das Array zuzugreifen ???

!{dataJSON.Meals.lunch} 

Antwort

2

Verwenden folgendes Mittagessen Array für Jade Vorlage zugreifen:

p #{dataJSON.Meals.lunch} 

wo p einen Absatz-Tag ist.


Ja, können Sie über das Array wie folgt durchlaufen:

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

für Detailansicht können Sie sich beziehen: Iteration in Jade

+0

Dank @Nivesh. Weißt du, wie ich auf das RAW-Array in meiner Jade-Vorlage zugreifen würde? Ich möchte es in einer for-Schleife wie folgt durchlaufen: 'form wählen Sie zum Mittagessen in [" Türkei Sandwich "," Huhn Quesadilla "," Hamburger und Fries "] Option (Wert = Mittagessen) # {Mittagessen}' – Calrocks

+0

Ich hoffe das löst dein Problem. – Nivesh

+0

Ich habe es nach 30 Minuten endlich herausgefunden. Haha. Nochmals vielen Dank für Ihre Hilfe! – Calrocks