Javascript expressframework中带有JSON文件的PUG多次迭代
我正在用Express和PUG开发小应用程序,我想这样做: 哈巴狗Javascript expressframework中带有JSON文件的PUG多次迭代,javascript,json,node.js,express,pug,Javascript,Json,Node.js,Express,Pug,我正在用Express和PUG开发小应用程序,我想这样做: 哈巴狗 ul#restaurants-list li img.restaurant-img(alt='Mission Chinese Food', src='/images/reactchat.png') h1 =`${name}` p ='URL : ' + `${url}` p
ul#restaurants-list
li
img.restaurant-img(alt='Mission Chinese Food', src='/images/reactchat.png')
h1
=`${name}`
p
='URL : ' + `${url}`
p
=`${explanation}`
a(href=`/${name}`) View Details
index.js
let express = require('express');
let router = express.Router();
let bodyParser = require('body-parser');
const fs = require('fs');
router.use(bodyParser.json()); // to support JSON-encoded bodies
router.use(bodyParser.urlencoded({ // to support URL-encoded bodies
extended: true
}));
// LowDB Module
const low = require('lowdb');
const FileSync = require('lowdb/adapters/FileSync');
const shortid = require('shortid');
// Save DB in db.json
const adapter = new FileSync('./public/db.json');
const db = low(adapter)
db.defaults({
project: [],
cert: [],
education: []
})
/* GET home page. */
router.get('/', function (req, res, next) {
let data = db.get('project').find().value();
let sid = shortid.generate();
console.log(data);
res.render('index', {
dataarray: data,
id: sid,
name: data.name,
url: data.url,
explanation: data.explanation,
imgurl: data.imgurl
});
});
module.exports = router;
我可以使它成为一个li元素,它可以工作,但我不知道如何像图像一样迭代li元素。数据来自JSON文件,我通过lowDB依赖性获得它
db.json文件如下所示
{
"project": [{
"name": "React Chat App",
"url": "https://sangumee.herokuapp.com/",
"explanation": "THis Project is good",
"imgurl": "images/reactchat.png",
"date": ""
},
{
"name": "React Chat App",
"url": "https://sangumee.herokuapp.com/",
"explanation": "THis Project is good",
"imgurl": "images/reactchat.png",
"date": ""
}
],
"cert": [],
"education": []
}
因此,问题是如何在index.js中保存多个json数据以将其保存到PUG文件中。以及如何从index.js接收多个数据并将其传播到li元素迭代中
我已经检查了帕格文档和几个与此问题相关的问题,但我仍然不知道。您需要像这样使用
每个
操作符:()
带有变量声明的第一行将迭代器指向我认为在您的路线中餐厅所在的位置。您也可以这样做,无需额外变量:
each restaurant in dataarray.project
each restaurant in dataarray.project