我是一个 C/C++ 人,试图使用 Node.js、Express.js 和 MariaDB 制作一个简单的 Web 应用程序。
function getData(sensor)
{
var query = c.query('SELECT * FROM sensor_data WHERE id >= ALL (SELECT id FROM sensor_data WHERE sensor = ?) AND sensor = ?', [sensor,sensor]);
query.on('result', function(res) {
res.on('data',function(row) {
return(row);
});
});
}
app.get('/', function(req, res) {
res.render('index', {
temperatureSala: getData('sala').temperature + 'ºC',
humiditySala: getData('sala').humidity + '%'
});
});
我的问题是处理异步。当我尝试渲染页面时,渲染函数首先完成运行,然后我发现变量未定义。查询结束后,结果正确。
处理这个问题的最佳方法是什么?您有任何问题请提出。
谢谢!