Javascript 为什么代码中有一部分没有执行?Node.js/Oriento
我调用了一个函数,Javascript 为什么代码中有一部分没有执行?Node.js/Oriento,javascript,node.js,orientdb,oriento,Javascript,Node.js,Orientdb,Oriento,我调用了一个函数,function select(items,className,callback),它在console.logconsole.log(“函数运行”)中有一个console.log 在这里我称之为: io.on('connection', function(socket){ console.log('User connected.'); openServer(); //This start the connection between OrientDB and the
function select(items,className,callback)
,它在console.logconsole.log(“函数运行”)
中有一个console.log
在这里我称之为:
io.on('connection', function(socket){
console.log('User connected.');
openServer(); //This start the connection between OrientDB and the Server
select("name", "Buyers", function(err, data){
if(err){
console.log("ERROR: ", err);
} else {
console.log("result from db is: ", data);
}
});
功能代码:
function select(items ,className, callback){
server.query("SELECT "+items+" FROM "+className+"", function(err, result){
console.log("Function ran.");
if (err)
return callback(err, null);
else
return callback(null, result[0].name);
});
}
select函数()
的console.log()
我的问题是:
- 为什么他们永远不会被处决
旧OrientJS使用承诺
OrientJS,因为旧Oriento使用承诺
select在('connection')的io.on(io.on)回调函数被触发之前不会被调用,所以唯一的问题是,您永远不会得到连接“openServer”中的GIS代码是异步的?当您说“console.log()都没有执行”时,您的意思是您发布的代码中的四个都没有?我是指函数select
上的控制台。log
“用户已连接”。
被输出?select将在触发io.on('connection'
回调函数之前不会被调用-因此唯一的问题是,您永远不会在代码中获得连接“openServer”是异步的?当你说“console.log()都没有执行”时,你是说你发布的代码中的四个都没有执行?我是指函数select上的console.log
,所以是“用户连接的”。
输出了吗?