不能使用UpdateItem从列表中删除元素

我试图从我的DynamoDB表中的ITEM中删除一个LIST元素。 我相信我有正确的设置,但似乎无法传递一个整数。

 var params = { TableName: DB_TABLE_NAME, Key:{ "Key": KEY_VALUE }, UpdateExpression: "REMOVE List[:n]", ExpressionAttributeValues: { ":n": 1 }, ReturnValues:"UPDATED_NEW" }; 

然后,我运行UpdateItem函数,我用于其他用例。

 db.update(params, (err, data) => { console.log(data); }); 

以下错误被返回

 "message": "Invalid UpdateExpression: Syntax error; token: \":n\", near: \"[:n]\"", 

当我删除ExpressionAttributeValues并用值1(它引用一个现有的List元素)replace:n ,它成功执行。

我明显失去了一些东西,任何帮助将不胜感激,谢谢!

虽然(至less对于node.js)SDK不接受AttributeValues,但可以通过将该variables添加到UpdateExpressionstring来解决此问题。

 UpdateExpression: "REMOVE List[" + listNumber + "]",