首页 > 解决方案 > TypeError:发现不可调用(使用 multer 上传文件)-Node.JS

问题描述

我正在尝试通过 multer 保存图像地址数据,但出现以下错误:

(node:11940) UnhandledPromiseRejectionWarning: TypeError: Found non-callable @@iterator

控制器:

    static async store (req, res, next) {
    const email  = req.body.email;
    const ImageFile = {
        name: req.file.originalnam,
        size: req.file.size,
        key: req.file.filename,
        url: req.file.url
    }       

    const exists = await Client.findOne({ email })
    if (exists) 
        return next (Errors.BadException('Email already exists'))

    const user = await Client.create(req.body, ... ImageFile); 
    user.password = undefined;


    return res.status(204).send({
        user,
        token: generationToken({ id: user.id}),
    })    

}

模型上的图像如何:

    image: {
       name: String,
       size: Number,
       key: String,
       url: String,
       createdAt: {
          type: Date,
          default: Date.now
       }
},

标签: javascriptnode.jsmongodbmongoosemulter

解决方案


推荐阅读