對方回答似乎在暗示這應該工作(所以不重複):不能回調獲得價值 - JavaScript的
我想能夠使用結果對象的功能之外。我使用了回調,但是我仍然有問題。
exports.getArray = function(query, callback) {
connection.query('SELECT ' + query + ' FROM table', function(err, result) {
if (!err) {
var array = [];
for (var i = 0; i < result.length; i++) {
array.push({
id: result[i].id,
});
}
callback(array);
console.log('Retrieved Data');
} else
console.log('Error while retrieving data.');
});
}
在另一個文件
日誌:
[{
id: 71,
author: 'catnip'
}, {
id: 78,
author: 'cup49'
}]
這句話說'console.log(data); //輸出[]'立即運行,它不會等待回調函數 –
將這個'data.concat(result);'改爲'data = result;' –
_「另一個答案似乎表明這應該工作不是重複的)「 - - 你還在談論什麼其他答案? – Xufox