我有一个JSOn文件列表,我想将其读取到数组中,因此每个对象都是json文件的内容。
我是Node and Express的新手,但是到目前为止,我已经尝试过了。
const express = require('express')
const app = express()
const port = 3001
const fs = require('fs')
//file upload
const dataFolder = './parsed_json_data'
let fileNames = []
let fileObjects = []
fs.readdir(dataFolder,(err,files) =>{
if(err){
return console.log(err)
}
fileNames = files.forEach(file =>{
fileNames.push(file)
console.log(fileNames)
});
})
fileNames.forEach(fileName =>{
fs.readFile(fileName,'uft8',data) =>{
if(err){
console.log(err)
}
fileObjects.push(JSON.parse(data))
console.log(fileObjects)
})
})
app.get('/',(req,res) => res.send('Hello World!'))
app.listen(port,() => console.log(`Example app listening on port ${port}!`))
这是一个异步操作吗?如果是这种情况,我该如何等待,以便在映射之前先读取文件名?
我曾经尝试过async / await,但是运气不好,因为它是分开操作的?