我有一个位于业务层(GoalFeed)的lambda,它的功能是聚合来自另外两个lamdbas(目标和用户)的数据。
GoalFeed调用目标(RESTful / GET)并对结果进行迭代,这是一种具有这种性质的东西(为简洁而省略代码):
lambda.invoke( goalsParms, function( err, data ) {
var items = data.Payload.body.Items;
items.forEach( function( element ) {
lambda.invoke( teamsParms, function( err, data ) {
// PROBLEM: element is always the *last* element here!!
});
});
});
所以我遇到的问题是我想在嵌套的lambda.invoke回调中传递(引用)每个元素,但我没有看到实现这一点的方法。 lambda.invoke(teams)调用中的引用元素总是给我列表中的 last 元素。
如何在嵌套的lambda.invoke(团队)的回调中传递元素/或正确引用它,这样当嵌套调用执行时,它将在初始调用期间获取当前元素的数据? / p>
答案 0 :(得分:0)
我认为这与我如何处理链中的承诺有关,虽然创建一个单独的函数并用元素调用它似乎已经解决了问题。