2
NodeJSの新機能で、私の約束を守ります。 以下の簡単な例では、then関数がなぜ起動しないのか分かりません。データ変数は正常に設定されましたが、この時点以降は続行されません。bluebird.jsは機能しません
私は間違っていますか?
var AWS = require('aws-sdk');
var Promise = require('bluebird');
var docClient = new AWS.DynamoDB.DocumentClient();
Promise.promisifyAll(Object.getPrototypeOf(docClient));
var tableQuery = {
TableName : "Info",
KeyConditionExpression: "#rt = :rt",
ExpressionAttributeNames: { "#rt": "Type" },
ExpressionAttributeValues: { ":rt": "Owner" }
}
docClient.queryAsync(tableQuery, function (err, data) {
return data;
}).then(function(data) {
//doesn't get here...
return data.Items;
}).done(function (item) {
console.log("Done." + item);
});
コンソールにエラーメッセージが表示されますか? –
いいえ...それは単に続かない。それは待っているようです。 – Mike
なぜあなたは 'queryAsync()'にコールバック関数を渡していますか? 'docClient.queryAsync(tableQuery).then(...)'でなければなりません。 – robertklep