小弟初学 node ,有个地方想不明白,想请教一下。
例如我现在要取得 A 、 B 两个数据,并渲染到模板中
传统的渲染模型大概是这样:
var A = getDataA('param')
var B = getDataB('param')
// 这里,获取到了 A 、 B 两个数据,然后一并作为数据渲染到模板中:
render('template',{
'a':A,
'b':B
})
但是因为 node 中的异步操作,一般都不直接返回结果,而是传入一个回调函数,处理获取的结果
getDataA('param',funciton(A){
//这里获取到了 A ,并处理,此时可以去获取B
getDataB(param,function(B){
//获取到 B
//这里就访问不到 A 了,此时在这里渲染出去,就只能渲染 B,有没有什么办法 A/B 同时获取,并渲染模板
render('template',{
'b':B
})
})
})
请教有什么好的解决办法,或者是我又想不到的地方?
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.