繁体   English   中英

我想检查用户参数。 如果它成功我想添加到用户数组

[英]i want to check user parameters. if its success i want to add to users array

我的回复有误。 当我离开 email 并且密码为空时,我的响应显示正确的错误,但是当所有字段都正确或我再次输入相同的 email 时,它显示未定义。 我还添加了我的用户文件,我正在检查用户

router
  .route("/register")
  .get((req, res) => {
    res.render("register", { message: "" });
  })
  .post((req, res) => {
    const user ={
      email : req.body.email,
      password: req.body.password
    }

    checkUser =  new User
    const response = checkUser.registration(user)
    console.log(response)

  });

这是我检查错误的用户文件

const users =[]
const Joi = require('joi')

class User{

    registration(userDetails){
        const {value ,error} = validateUser(userDetails)
        if(error){
            return error.message
        }else{
            const user = users.find((u) =>{
                if(u.email === userDetails.email){
                    return  "user Exist"
                }else{
                   users.push(user)
                   return users
                }
            })
        }

    }
}

function validateUser(user) {
    const JoiSchema = Joi.object({
      email: Joi.string().email().min(5).max(50).required(),
      password: Joi.string().min(5).required(),
    }).options({ abortEarly: false });
  
    return JoiSchema.validate(user);
  }

module.exports = User

我对您的代码进行了一些代码重构。 现在检查。 我没有在我这边执行你的代码,但我希望能找到。

// Route.
router.route("/register")
  .get((req, res) => {
    res.render("register", { message: "" });
  })
    .post((req, res) => {
        const user = {
            email: req.body.email,
            password: req.body.password
        }

        const checkUser = new User();
        const response = checkUser.registration(user);
        console.log(response);
    });

// User 
class User {
    registration(userDetails){
        const {value ,error} = validateUser(userDetails)
        if (error) return { error: message}
        else {
            const user = users.find((u) => (u.email).toLowerCase() === (userDetails.email).toLowerCase());
            if (user) return  { error: "user Exist" }
            else {
                users.push(user);
                return { users: users }
            }
        }

    }
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM