Я хотел бы создать асинхронный метод с обещанием, но я не могу понять, почему он не работает с моей программой ниже:
app.get('/historique', function (req, res) {
const pathFolders = `.\\..\\website\\src\\assets\\covering\\`;
const promise2 = new Promise(function (resolve, reject) {
fs.readdirSync(pathFolders).forEach(folder => {
recursive(`${pathFolders}\\${folder}\\`, function (err, files) {
var datapath = [];
files.forEach(file => {
console.log("1");
});
console.log("2");
});
console.log("3");
resolve("3");
});
});
promise2.then(function (value) {
console.log("end")
res.status(200).send("end")
});
})
Обычно я хотел бы, чтобы программа отображалась в порядок на console.log 1 1 1 2 1 1 2 ... затем 3 и, наконец, "конец". Но console.log покажет мне сначала 3, затем "конец", затем 1 1 1 2 1 1 2 ...
Можете ли вы помочь мне, пожалуйста. Я думаю, что это из-за for l oop, но я не могу решить эту проблему.