#node.js #nestjs #nest
Вопрос:
Я пробовал использовать
import fs from 'fs';
.
.
.
@Delete(':fileName')
async deletePicture(@Param('fileName') fileName: string) {
await fs.unlink('../../uploads/${fileName}', (err) => {
if (err) {
console.error(err);
return err;
}
});
}
Но это не работает. Я поискал в Интернете, но там нет никакой информации об этом.
Комментарии:
1. Как насчет того, что «не работает», вы получаете ошибки? Файл не удаляется? Нам нужно больше информации, чтобы иметь возможность помочь.
2.кстати, fs.unlink не возвращает обещание, так
await
что это не имеет смысла. Я советую вам использовать API promise дляfs
nodejs.org/api/fs.html#fs_fspromises_unlink_path3. Ошибка, которую я получал, была
Cannot read property 'unlink' of undefined
. Проблема была решена, когда я изменил импорт сimport fs from 'fs';
наimport * as fs from 'fs';
4. Кроме того, асинхронность необходима, потому что я использую
fs.unlink
. Для использования функции синхронизацииfs.unlinkSync
5. Пожалуйста, отредактируйте вопрос, чтобы ограничить его конкретной проблемой с достаточной детализацией для определения адекватного ответа.
Ответ №1:
Ошибка, которую я получал, была Cannot read property 'unlink' of undefined
. Проблема была решена, когда я изменил импорт с import fs from 'fs';
на import * as fs from 'fs';
PD: Убедитесь, что вы используете правильный путь (машинный путь) к архиву внутри fs.unlink(path, callback)
.