DynamoDB是否支持用反引号换行的字符串作为UpdateExpression?
关于DynamoDB UpdateExpression使用多行模板字符串的问题
完全可以用反引号定义的多行字符串来编写DynamoDB的UpdateExpression,换行符本身不会引发问题,原因如下:
- DynamoDB的表达式解析器会忽略表达式中的任意空白字符(包括换行、空格、制表符),只要你的语法结构正确,带换行的表达式能被正常解析执行。
- 你例子里的缩进空格也不会影响,解析器会自动过滤这些多余空白,不会导致语法错误。
如果实在担心(其实没必要),可以通过简单处理消除多余的换行和空格:
UpdateExpression: ` Set val1 = x, val2 = y, val3 = z `.trim().replace(/\n\s+/g, ' ')
这种方式既保留了编写时的可读性,又能得到一个紧凑的表达式字符串。
另外,也可以用字符串拼接的方式实现同样的可读性:
UpdateExpression: 'Set val1 = x, ' + 'val2 = y, ' + 'val3 = z'
实际测试下来,直接使用带换行的多行模板字符串完全可行,不会出现解析问题。
内容的提问来源于stack exchange,提问作者physicsboy
相关产品推荐
相关产品推荐

