#node.js #file
Вопрос:
Ну, я получаю эту ошибку, когда я пытался создать каталог, которого не существует, вот код.
пожалуйста, дайте мне знать, чего мне не хватает в моем коде.
здесь у меня есть функция в файле под названием AccessFile.js
exports.writeFileToFolder = async (file, res, postId) => {
const filePath = await `/images/${postId}/${file.name}`;
// console.log("My postId", postId);
file.mv(filePath, (err) => {
if (err) {
res.status(500).send(err);
} else {
// console.log("My filePath", filePath);
res.json({ status: "ok", message: "File uploaded" });
}
});
};
и я использую эту функцию в другом файле под названием imageController.js
const saveUploadedFile = (res, files, postId) => {
file = files.file;
const dir = `/images/${postId}`;
fs.access(dir, (error) => {
if (error) {
fs.mkdir(dir, (error2) => {
if (error2) {
res.status(500).send("Failed to create the directory!");
} else {
writeFileToFolder(file, res, postId);
}
});
console.log("Directory does not exist.");
} else {
writeFileToFolder(file, res, postId);
console.log("Directory exists.");
}
});
};
ошибка исходит из этого файла, если вы видите, что у меня есть консоль.войдите в мой код.
Failed to create the directory!
если кто-нибудь увидит мои ошибки, пожалуйста, оставьте комментарий.
Спасибо.
потому что я уже пару часов пытаюсь в этом разобраться.
Комментарии:
1. Не могли бы вы показать нам содержание
error2
того, когдаfs.mkdir
произошел сбой2. Что вы подразумеваете под содержанием ошибки 2?
3. console.log(ошибка 2) он должен содержать сообщение и сообщение об ошибке
4. Потенциальная проблема может заключаться в том, что
'/images/'
каталог не существует, в этом случае вам следует использоватьfs.mkdir(path, { recursive: true }, () => { ... })
5. Ах, хорошо, значит, эта ошибка(не удалось создать каталог!) не отображается в терминале, когда я пытаюсь выбрать изображение и отправить форму, затем эта ошибка появляется в консольной сети с кодом 500. и в терминале она возвращает эту ошибку console.log(«Каталог не существует».);