对于DynamoDB表中的“ id”(例如e5eb02ae-04d5-4331-91e6-11efaaf12ea5
),我有一个名为Weather的列
['sun', 'rain', 'snow', etc...]
当['hail']到达时,我需要更新Weather。现在,我下面的update()替换了整个数组。我要做的就是在列表的末尾附加“ hail”。
const updateinfo = {
id: "e5eb02ae-04d5-4331-91e6-11efaaf12ea5",
Weather: "hail"
}
try {
await API.graphql(graphqlOperation (UpdateInfo, { input: updateinfo })) //mutation
console.log('success')
}
catch (err) {
console.log(err)
}
我该怎么做,确保我的列表仅附加信息,而无需get()并下拉['sun','rain','snow'等...],然后添加“雹”并创建一个新的数组?那就是一个GetInfo()和一个UpdateInfo(),后者是工作量/调用/费用的两倍。
答案 0 :(得分:0)
我在另一个问题中发表了对类似问题的回答。答案是使用名为list_append
的DynamoDB函数。
list_append(操作数,操作数)
此函数求值为列表,其中添加了新元素。您可以通过反转操作数的顺序将新元素追加到列表的开头或结尾。
您可以在此处查看有关如何使用AWS AppSync和AWS Amplify进行操作的详细响应。