我对node.js感兴趣。
如果一切都是“非阻塞地”执行,它什么时候将结果刷新到客户端(浏览器),如果我想从db获取结果,发布到其他服务器,并从其他服务器返回结果get,我需要在这样的回调中放回调?
var dbquery = db.query(function(result){
var postToServer = otherServer.post(result.id,function(networkResult){
render(networkResult)
})
})
或者可以“更优雅地”处理?
答案 0 :(得分:0)
这正是承诺的目的。很少有库在JavaScript中实现它们。
https://github.com/kriszyp/node-promise http://howtonode.org/promises
这里解释得太多了,所以你必须去阅读并查看一些示例代码。
基本上你的代码看起来像这样:
query_db()
.then(function (result) { return otherServer.post(result.id); })
.then(function (networkResult) { render(networkResult); });
答案 1 :(得分:0)