我现在正在学习node.js而且我遇到了麻烦。
我查看了事件发射器,但它似乎与我无关。
这就是我所说的:
exports.search = function(lat, lng, Arr, callback) {
//something
geocoder.reverse({
lat: lat,
lon: lng
}, function(err, res, callback) {
//finding the area
if (area !== "null") {
pool.getConnection(function(err, connection, callback) {
if (err) {
} else {
connection.query("SOME SQL CODE", function(err, rows, fields, callback) {
if (found what Im looking
for) {
connection.query("SOME SQL CODE", function(err, rows, fields, callback) { //looking for something else
if (err) {
callback(true);
} else {
if (rows[0] === undefined) {
callback(true);
} else {
console.log("found!");
callback(null, rows[0]);
}
}
});
} else if (err) {
}
});
}
});
} else {
}
});
};
我找到了我的#34;发现了!"在控制台日志中,但回调由于某种原因不起作用。
如果我在函数结尾处放回一个回调"搜索"它确实回电,我知道我对获得回调的功能没有问题。
谢谢!
答案 0 :(得分:0)
我认为回调(null,rows [0])是函数geocoder.reverse的回调。您可以更改搜索功能的名称回调是callback1,然后调用如下。
protected void Button2_Click(object sender, EventArgs e)
{
int no1;
int no2;
int no3;
int no4;
int no5;
int no6;
int no7;
int no8;
int no9;
no1 = int.Parse(txt1.Text);
no2 = int.Parse(txt2.Text);
no3 = int.Parse(txt3.Text);
no4 = int.Parse(txt4.Text);
no5 = int.Parse(txt5.Text);
no6 = int.Parse(txt6.Text);
no7 = int.Parse(txt7.Text);
no8 = int.Parse(txt8.Text);
no9 = int.Parse(txt9.Text);
int[] a = new int[] {no1,no2,no3,no4,no5,no6,no7,no8,no9 };
Array.Sort(a);
foreach (var str in a)
{
MessageBox.Show(str.ToString()); //display in MessageBox, but i want to display back to 9 different textbox.
}
};
您可以将async lib应用于您的代码,以便您的代码也清晰。
答案 1 :(得分:0)