导出的async/await函数的catch错误



我有一个模块可以检查用户名是否唯一!我的模块是:

// Check for uniqueness username
const UsernameUniqueness = async (_username) => {
    const username = await Users.findOne({
        username: _username
    });
    if (username) {
        return false;
    }
    return true;
}
exports.UsernameUniqueness = UsernameUniqueness;

我有一个路由,我发布用户名到它。

const FormUniqueness = require('../modules/form-uniqueness');
router.post('/register', redirectDashboard, async (req, res, next) => {
  const ( username } = req.body;
  
  try {
    console.log(FormUniqueness.UsernameUniqueness(userName));
  } catch (error) {
        // Internal server error 500
        console.log('here');
        error.status = 500;
        next(error);
  }
  
}

当我在";const username=wait Users.findOne({用户名:_username});我的错误投进了我的路线尝试/接球">

我该怎么做?

在函数中也捕获错误

const UsernameUniqueness = async (_username) => {
    try {
   
        const username = await Users.findOne({
            username: _username
        });
        if (username) {
            return false;
        }
        return true;
    } catch(error) {
        throw error;
    }
}
exports.UsernameUniqueness = UsernameUniqueness;

最新更新