node.js/express/mysql/serialport/socket.io

node.js/express/mysql/serialport/socket.io,mysql,node.js,express,serial-port,socket.io,Mysql,Node.js,Express,Serial Port,Socket.io,我正在使用这个问题标题中提到的所有模块进行这个项目。 当我发送文本消息时,计算机可以通过serialport读取它,它要做的第一件事就是查看该号码是否已在数据库中注册。以下是代码: function consultarNumero(head, body, numero){ connection.query('SELECT * FROM devices WHERE nro_telefono = "'+numero+'"', function(err, result){ if(err){

我正在使用这个问题标题中提到的所有模块进行这个项目。 当我发送文本消息时,计算机可以通过serialport读取它,它要做的第一件事就是查看该号码是否已在数据库中注册。以下是代码:

function consultarNumero(head, body, numero){
  connection.query('SELECT * FROM devices WHERE nro_telefono = "'+numero+'"', function(err, result){
    if(err){
      console.log(err);
    }else{
      if(result[0]['id']!=null){
        var idEmbarcacion = result[0]['id'];
        //readingData.dividirPartes(head, body, idEmbarcacion); <- some other function
      }else{
        return false;
      }
    }
  });
}
功能顾问编号(头部、身体、编号){
connection.query('从设备中选择*,其中nro_telefono=“'+numero+'”,函数(err,result){
如果(错误){
控制台日志(err);
}否则{
如果(结果[0]['id']!=null){
var idEmbarcacion=结果[0]['id'];

//读取数据.dividirPartes(头部,身体,idEmbarcacion);如果没有结果时
result
确实是
undefined
,那么
result[0]
也将是
undefined
。下面的示例不应该通过
If(result)
的第一次评估,然后它应该安全到达else

if (result && result[0] && result[0]['id']) {}

太好了,成功了!我不认为在评估时一点一点进入阵列是解决方案。谢谢