如何使用Node.js从Dynamodb检索输出查询数据

时间:2014-09-05 02:19:23

标签: node.js amazon-dynamodb

我很难理解我的查询存储在哪个数组变量中。我知道" var params"包含所有查询条件和" db.query"将执行实际的查询操作。但是如何获得与我的搜索条件匹配的查询结果?

最后,我想将我的查询输出参数(title,postedby)传递给html或jade进行显示,这样我就需要了解所有查询数据存放在哪里以及如何检索它们。我们将非常感谢一些演示此部分的示例代码。感谢

var params = {
TableName: tablename,
AttributesToGet: [
'title',
'postedBy'
],
Limit: 20,
ScanIndexForward: true,
KeyConditions: { /* required */
    key : {
        ComparisonOperator: 'EQ', /* required */
            AttributeValueList: [
            {
                'N' : 'some value'
            }
            /* more items */
    },
},
};

db.query(params, function(err, data) {
if (err) {
    console.log('show error here');
} else {
    console.log('Success');
}
});

我发现我的所有查询数据都存储在"数据"来自函数(错误,数据)。但我有问题传递"数据"以下导出函数,以后可以在我的网页中用作局部变量。然后我意识到了数据"部分在导出函数内始终为空{},即使我确信上面的db.query可以返回正确的结果。所以我相信export.list函数会在db.query发生之前执行,所以我没有分配任何数据。我怎样才能克服这一部分?谢谢。

exports.list = function(req, res){
  res.render('post', {title:'Title', posts : data });
  console.log("Result: %j", data);
};

注意:Console.log("结果:",数据)显示{}

1 个答案:

答案 0 :(得分:0)

我明白了。由于javascript的性质,使用回调函数。感谢。