Node.js 进程未终止,消息未在nodejs中显示
我是Node.JS和MongoDB的初学者。我想做注册过程。现在我正在检查演示代码,而不使用express.JS。我的任务是,如果用户存在于数据库中,我应该显示“您是存在的用户,转到登录页”,如果用户是数据库的新手,我应该在数据库中插入数据。我应该在这段代码中显示“欢迎你是新用户”,所有代码都执行得很好,但消息最后没有打印出来,这就是问题所在。有人能解决这个问题吗?提前感谢Node.js 进程未终止,消息未在nodejs中显示,node.js,mongodb,Node.js,Mongodb,我是Node.JS和MongoDB的初学者。我想做注册过程。现在我正在检查演示代码,而不使用express.JS。我的任务是,如果用户存在于数据库中,我应该显示“您是存在的用户,转到登录页”,如果用户是数据库的新手,我应该在数据库中插入数据。我应该在这段代码中显示“欢迎你是新用户”,所有代码都执行得很好,但消息最后没有打印出来,这就是问题所在。有人能解决这个问题吗?提前感谢 var mongodb=require(“mongodb”); var mongoclient=mongodb.mong
var mongodb=require(“mongodb”);
var mongoclient=mongodb.mongoclient;
变量url=”mongodb://localhost:27017/check";
var username=“V.V vinayak”;
var userpass=“655vhwhww”;
var usergmail=”vvvinayak123@gmail.com";
var message=“”;
连接(url,函数(err,db)
{
如果(错误)
{
日志(“检查数据库未连接”);
控制台日志(err);
}
其他的
{
日志(“检查数据库是否连接”);
var collection=db.collection(“achocho”);
findOne({“name”:username},函数(err,result)
{
如果(错误)
{
控制台日志(err);
}
否则,如果(结果)
{
message=“您是现有用户,进入登录页面”;
}
其他的
{
insertOne({“name”:username,“gmail”:usergmail,“password”:userpass},函数(err,result)
{
如果(错误)
{
控制台日志(err);
}
其他的
{
console.log(“数据插入成功”);//我也能正确显示此消息。。。
message=“欢迎您成为新用户”;
}
});
}
});
}
console.log(message);//此消息未打印,这就是问题所在。我应该在此处显示此消息
});代码>节点js本质上是异步的,因此您需要仔细编写下一个执行步骤
请在下面查找更新的代码:
var mongodb=require("mongodb");
var mongoclient=mongodb.MongoClient;
var url="mongodb://localhost:27017/check";
var username="V.V vinayak";
var userpass="655vhwhww";
var usergmail="vvvinayak123@gmail.com";
var message="";
mongoclient.connect(url,function(err,db)
{
if(err)
{
console.log("check db is not connected");
console.log(err);
}
else
{
console.log("check db is connected");
var collection=db.collection("achocho");
collection.findOne({"name":username},function(err,result)
{
if(err)
{
console.log(err);
}
else if(result)
{
message="You are exist user go to login Page";
printMsg(message);
}
else
{
collection.insertOne({"name":username,"gmail":usergmail,"password":userpass},function(err,result)
{
if(err)
{
console.log(err);
}
else
{
console.log("Data inserted successfully"); //This message is also displayed correctly for me...
message="welcome you are new user";
printMsg(message);
}
});
}
});
}
});
printMsg(message) {
console.log(message);
}
它起作用了…谢谢你的回答。有没有其他办法来解决这个问题