简体   繁体   English

NodeJS函数无法识别变量

[英]NodeJS function not recognizing variable

I created an email checker function to verify if the email exists before registering a new user. 我创建了一个电子邮件检查器功能,以在注册新用户之前验证电子邮件是否存在。 I assigned req.body to user. 我将req.body分配给用户。 However, the newUser function within my email checker function is not recognizing the variable user. 但是,我的电子邮件检查器功能中的newUser函数无法识别可变用户。 How can I pass user into the function so if the email is not recognizing I can create the new user? 我如何将用户传递到该功能中,以便在电子邮件无法识别的情况下可以创建新用户?

Here is my code: 这是我的代码:

app.post("/api/user", function(req, res) {

    var user = req.body;
    console.log("line 117", user);

    var searchUser = {
        email: user.email
    };

    User.findOne(searchUser, function(err, user){
        if (err) throw err;

        if (user) return res.status(401).send({
            message: "email already exists"
        });

        var newUser = new User({
            firstName: user.firstName,
            lastName: user.lastName,
            email: user.email,
            password: user.password
        });

        newUser.save(function(err) {
            createSendToken(newUser, res);

        });

    });

});

Here is my corrected code: 这是我的更正代码:

app.post("/api/user", function(req, res) { app.post(“ / api / user”,function(req,res){

var subscriber = req.body;

var searchUser = {
    email: subscriber.email
};

User.findOne(searchUser, subscriber, function(err, user){
    if (err) throw err;

    if (user) return res.status(401).send({
        message: "email already exists"
    });

    var newUser = new User({
        firstName: subscriber.firstName,
        lastName: subscriber.lastName,
        email: subscriber.email,
        password: subscriber.password
    });

    newUser.save(function(err) {
        createSendToken(newUser, res);

    });

});

}); });

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

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