如何在node.js中使用inner's result in outer function
how to use inner's result in outer function in node.js
目前,我在node.js中学习node-mysql,但是我遇到了一个问题,尝试了很多,我不知道如何解决它?
:
var express = require('express');
var app = express();
var mysqlcon=require('./testmysql');
var mysqlconn=mysqlcon.conn;
var http=require("http");
var url=require("url");
app.use('/sql',testExist).listen(3000);
function testExist(req,res,next){
var query = url.parse(req.url,true).query;
var name=query.name;
mysqlconn.connect();
var result=function(err, results){
return results.length;
}
mysqlconn.query('select * from user where name = ?',[name],result);
mysqlconn.end();
if(result>1)
console.log('result:'+result)
res.end("name is already exist!")
}
我想在外部函数中获得内部函数的结果,例如这种查询的长度将是1(results.length==1),但我想在testExist()中使用结果,我们知道节点使用回调函数,因此我无法在外部函数中获得内部结果。有谁能帮我解决这个问题吗?
您需要将using代码移到回调中。
function callback(err, results) {
if(results.length >1) console.log('result:' + results.length);
res.end("name is already exists!");
}
mysqlconn.query("select * from user where name= ?", [name], callback);
相关文章:
- Node.js's Buffer.writeFloatBE in Javascript
- Setting default onclick behavior for <img> tag in gene
- Lucene Search in Alfresco
- grep in JQuery to C#
- write HTML in JavaScript
- jQuery setTimeOut: in for-loop
- SetTimeout and clearTimeout in Javascript
- lightbox in html 5 and javascript
- HTMLInputElement in IE7
- Mongodb$in以与数组中相同的顺序获取结果
- element.dataset in Internet Explorer
- jQuery parent() in table
- Instagram oauth flow in angularjs
- In循环的In运算符前后
- 如何使用for in循环在javascript中显示对象中的对象
- Jquery change onchange in onload
- 重构 jQuery in JS 问题
- wiered javascript result in my code undefiend variable
- Different result from JavaScript RegExp in "rhino1.7.6&
- 如何在node.js中使用inner's result in outer function