在Node.js中导出的​​自定义模块中使用函数时遇到问题

时间:2019-05-29 19:16:15

标签: node.js express

我是nodejs的新手,我正在尝试导出我的自定义模块,但是它说函数未定义或不是函数。

我创建了一个模块,其中包含一个使用Joi库验证请求正文的函数。以下是我所做的

validator.js

const Joi = require('joi');

var validateCustomer = function(customer) {
    const schema = {
        name: Joi.string().min(3).required()
    }

    return Joi.validate(customer, schema)
}

module.exports.validator = validateCustomer;

customers.js

const validator = require('../myModules/validator');

router.post('/', async (req, res) => {
    const {error} = validator(req.body);
    if(error) return res.error(404).send(error.details[0].message);
    ...some code 
});

请帮助

1 个答案:

答案 0 :(得分:3)

更改

module.exports.validator = validateCustomer;

对于

module.exports = validateCustomer

validator.js中。