我一直在尝试为 batchWriteItem() 创建参数,当我像这样创建它们时,它确实有效。
var params = {
RequestItems: {
'tableNameXYZ' : [ //hardcoded
{
PutRequest: {
"Item" : {
"indexNumber":{
"N": xyz
},...
}
},
PutRequest: {
"Item" : {
"indexNumber":{
"N": xyz1
},...
}
}
}
]
};
但是当我在变量中有表名时,我无法处理它:
var tableName = 'tableNameXYZ';
var params = {
RequestItems: {
tableName : [
{
PutRequest: {
"Item" : {
"indexNumber":{
"N": xyz
},...
}
},
PutRequest: {
"Item" : {
"indexNumber":{
"N": xyz1
},...
}
}
}
]
};
显然这是行不通的,因为我在这里粗暴地使用 JSON 对象。然后我尝试了这个:
var params = {};
params.RequestItems[tableName] = [
{
PutRequest: {
"Item" : {
"indexNumber":{
"N": xyz
},...
}
},
PutRequest: {
"Item" : {
"indexNumber":{
"N": xyz1
},...
}
}
}
];
现在它给我一个错误,比如:
TypeError: Cannot set property 'tableNameXYZ' of undefined
at exports.handler (/var/task/index.js:181:32)
有人可以指出我的错误吗?谢谢。