我有一个表,其中有userId作为PK和一个名为userToken的属性。
我已经编写了batchGet()函数以返回特定userId的所有userTokens,但是它是这样返回的:
[{userToken:'1234'}, {userToken:'5678'}]
我希望它只返回值,因为我已经知道属性名称是什么: ['1234','5678']
我该怎么做?
const params = {
RequestItems: {
UserTokens: {
Keys: userIds,
AttributesToGet: [
'userToken'
]
}
}
};
db.batchGet(params, function(err, data) {
if (err) {
console.log("Error", err);
} else {
console.log(data.Responses);
sendNotifications(data.Responses);
}
});
答案 0 :(得分:0)
DynamoDB始终返回属性名称和值。
您可以在客户端轻松地对此进行过滤。
val = [ { userToken: '1234' }, { userToken: '5678' } ];
reducer = (accumulator, currentVal) => {
accumulator.push(currentVal.userToken);
return accumulator;
}
console.log(val.reduce(reducer, []));