Я пытаюсь считать данные из моей таблицы DynamoDB. Я не просто хочу записывать данные на консоль, но использую эти данные для выполнения другой функции. Мой код сейчас выглядит следующим образом:
var params = {
TableName: "eventsList",
Limit: 100
};
docClient.scan(params, onScan);
var count = 0;
function onScan(err, data) {
if (err) {
console.error("Unable to scan the table. Error JSON:", JSON.stringify(err, null, 2));
} else {
console.log("Scan succeeded.");
data.Items.forEach(function(itemdata) {
console.log("Item :", ++count,JSON.stringify(itemdata));
tester[itemdata.name] = itemdata.date;
});
// continue scanning if we have more items
if (typeof data.LastEvaluatedKey != "undefined") {
console.log("Scanning for more...");
params.ExclusiveStartKey = data.LastEvaluatedKey;
docClient.scan(params, onScan);
}
}
return tester;
}
console.log(tester);
Вывод, который я получаю, следующий:
Function Logs:
START RequestId: d1e2770c-24ef-4ee6-8570-c5f8bb4ee942 Version: $LATEST
2020-02-12T11:29:30.961Z d1e2770c-24ef-4ee6-8570-c5f8bb4ee942 INFO GetEventToday handler called
2020-02-12T11:29:31.601Z d1e2770c-24ef-4ee6-8570-c5f8bb4ee942 INFO {}
2020-02-12T11:29:31.821Z d1e2770c-24ef-4ee6-8570-c5f8bb4ee942 INFO Scan succeeded.
2020-02-12T11:29:31.821Z d1e2770c-24ef-4ee6-8570-c5f8bb4ee942 INFO Item : 1 {"name":"firstTestEvent","date":"03/1/2020"}
2020-02-12T11:29:31.821Z d1e2770c-24ef-4ee6-8570-c5f8bb4ee942 INFO Item : 2 {"name":"anotherTestEvent","date":"04/3/2020"}
2020-02-12T11:29:31.821Z d1e2770c-24ef-4ee6-8570-c5f8bb4ee942 INFO Item : 3 {"name":"newtestevent","date":"04/4/2020"}
2020-02-12T11:29:31.821Z d1e2770c-24ef-4ee6-8570-c5f8bb4ee942 INFO Item : 4 {"name":"secondTestEvent","date":"02/9/2020"}
2020-02-12T11:29:31.821Z d1e2770c-24ef-4ee6-8570-c5f8bb4ee942 INFO Item : 5 {"name":"thirdTestEvent","date":"03/5/2020"}
END RequestId: d1e2770c-24ef-4ee6-8570-c5f8bb4ee942
Таким образом, как показано, журнал тестера пуст (INFO {}). Так что это означает, что тестер пуст, и я не могу использовать данные, которые, как я думал, я там хранил Если я помещу журнал в скобки до return tester
, он заработает и регистрирует сохраненные данные.
Так что мне нужно изменить, чтобы сохраненные данные в тестере возвращались наружу? 1011 * onScan