Я новичок в использовании multer для загрузки файлов в приложении node-express. Я попытался передать промежуточное программное обеспечение (импортированное из отдельного файла) в мои маршруты, но в консоли получило сообщение об ошибке:
router.post('/', uploadMW.multerFunction('/articles').any('image'), articleController.article_create);
^
TypeError: uploadMW.multerFunction is not a function
at Object.<anonymous> (F:\wordify-web\backend-wordify\api\routes\articles.js:9:27)
Вот мой код для файла маршрутизатора, в котором я передаю свое промежуточное ПО:
const express = require('express');
const router = express.Router();
const articleController = require('../controllers/articles');
const uploadMW = require('../middleware/multer-file');
router.get('/', articleController.article_get_all);
router.post('/', uploadMW.multerFunction('/articles').any('image'), articleController.article_create);
router.get('/:articleId', articleController.article_by_id);
module.exports = router;
А вот код файла multer:
const express = require('express');
const router = express();
const multer = require('multer');
let storage = multer.diskStorage({
destination: function (req, file, cb) {
cb(null, './uploads')
},
filename: function (req, file, cb) {
cb(null, file.filename + '-' + Date.now() + path.extname(file.originalname))
}
})
const upload = multer({storage: storage}).single("image");
module.exports = upload;
Пожалуйста, помогите решить.