Почему выдаёт underfind?
Я пытаюсь загрузить файлы на сервер Nest и у меня выдаёт underfind
app.controller.ts
import { BadRequestException, Controller, Get, HttpCode, Post, UploadedFile, UseInterceptors, } from '@nestjs/common' import { FileInterceptor } from '@nestjs/platform-express' import { diskStorage } from 'multer' import { AppService } from './app.service' @Controller() export class AppController { constructor(private readonly appService: AppService) {} @Get() get() { return this.appService.getImages() } @HttpCode(200) @Post('upload') @UseInterceptors( FileInterceptor('photo', { storage: diskStorage({ destination: './uploads', filename: (req, file, cb) => { cb(null, `${file.originalname}`) }, }), }) ) uploadFile(@UploadedFile() file: Express.Multer.File) { if (file === undefined) throw new BadRequestException('Не найдено!') console.log(file) } } |
import { BadRequestException, Controller, Get, HttpCode, Post, UploadedFile, UseInterceptors, } from '@nestjs/common' import { FileInterceptor } from '@nestjs/platform-express' import { diskStorage } from 'multer' import { AppService } from './app.service' @Controller() export class AppController { constructor(private readonly appService: AppService) {} @Get() get() { return this.appService.getImages() } @HttpCode(200) @Post('upload') @UseInterceptors( FileInterceptor('photo', { storage: diskStorage({ destination: './uploads', filename: (req, file, cb) => { cb(null, `${file.originalname}`) }, }), }) ) uploadFile(@UploadedFile() file: Express.Multer.File) { if (file === undefined) throw new BadRequestException('Не найдено!') console.log(file) } }
package.json
"dependencies": { "@nestjs/common": "^10.0.0", "@nestjs/core": "^10.0.0", "@nestjs/platform-express": "^10.0.0", "@nestjs/serve-static": "^4.0.1", "reflect-metadata": "^0.1.13", "rxjs": "^7.8.1" }, "devDependencies": { "@nestjs/cli": "^10.0.0", "@nestjs/schematics": "^10.0.0", "@nestjs/testing": "^10.0.0", "@types/express": "^4.17.17", "@types/jest": "^29.5.2", "@types/multer": "^1.4.11", "@types/node": "^20.3.1", "@types/supertest": "^2.0.12", "@typescript-eslint/eslint-plugin": "^6.0.0", "@typescript-eslint/parser": "^6.0.0", "eslint": "^8.42.0", "eslint-config-prettier": "^9.0.0", "eslint-plugin-prettier": "^5.0.0", "jest": "^29.5.0", "prettier": "^3.0.0", "source-map-support": "^0.5.21", "supertest": "^6.3.3", "ts-jest": "^29.1.0", "ts-loader": "^9.4.3", "ts-node": "^10.9.1", "tsconfig-paths": "^4.2.0", "typescript": "^5.1.3" }, |
"dependencies": { "@nestjs/common": "^10.0.0", "@nestjs/core": "^10.0.0", "@nestjs/platform-express": "^10.0.0", "@nestjs/serve-static": "^4.0.1", "reflect-metadata": "^0.1.13", "rxjs": "^7.8.1" }, "devDependencies": { "@nestjs/cli": "^10.0.0", "@nestjs/schematics": "^10.0.0", "@nestjs/testing": "^10.0.0", "@types/express": "^4.17.17", "@types/jest": "^29.5.2", "@types/multer": "^1.4.11", "@types/node": "^20.3.1", "@types/supertest": "^2.0.12", "@typescript-eslint/eslint-plugin": "^6.0.0", "@typescript-eslint/parser": "^6.0.0", "eslint": "^8.42.0", "eslint-config-prettier": "^9.0.0", "eslint-plugin-prettier": "^5.0.0", "jest": "^29.5.0", "prettier": "^3.0.0", "source-map-support": "^0.5.21", "supertest": "^6.3.3", "ts-jest": "^29.1.0", "ts-loader": "^9.4.3", "ts-node": "^10.9.1", "tsconfig-paths": "^4.2.0", "typescript": "^5.1.3" },
Дополнительно:
Я пытаюсь загрузить файлы на сервер Nest и у меня выдаёт underfind
Искренне вам сочувствую, но вы бы хоть указали на каком этапе undefined получаете. Где конкретно проблема?
Опишите проблему, и специалист поможет с настройкой, исправлением ошибки или доработкой сайта. Подберём понятный план работ без лишней переписки.
Пока нет других ответов. Будьте первым, кто поможет автору.
Ответить на вопрос


Проблема с появлением значения "undefined" часто возникает в JavaScript из-за некорректного обращения к переменным или объектам. Вот несколько причин, почему это может происходить:
1. Попытка обращения к свойству объекта, которое не существует:
let obj = {}; console.log(obj.property); // здесь будет выведено "undefined", так как свойства "property" нет у объекта "obj"
2. Попытка обращения к элементу массива по несуществующему индексу:
let arr = [1, 2, 3]; console.log(arr[5]); // здесь будет выведено "undefined", так как элемента с индексом 5 нет в массиве "arr"
3. Неинициализированная переменная:
let variable; console.log(variable); // здесь будет выведено "undefined", так как переменная "variable" не имеет значения
4. Ошибка при работе с асинхронными операциями:
let result; fetch('https://api.example.com/data') .then(response => response.json()) .then(data => { result = data; }); console.log(result); // здесь будет выведено "undefined", так как fetch выполняется асинхронно, а вывод console.log происходит до того, как значение result устанавливается
Чтобы избежать проблемы с "undefined", убедитесь, что корректно обращаетесь к переменным и объектам, проверяйте их существование перед использованием, и учитывайте асинхронные операции при работе с данными.