问题描述
我想用VeLocity模板语言从数组中删除某个元素。在Apache VTL的文档中找不到任何合适的方法,这就是为什么我在这里寻求帮助。我尝试了以下操作(.remove()
似乎不是数组项的一种方法):
#set($linkedWIARRAY = ["ABC-123,DEF-345,GHI-678"])
#set($dummy=$linkedWIARRAY.add("JKL-901"))
#set($dummy = $linkedWIARRAY.remove("DEF-345"))
$linkedWIARRAY
$linkedWIARRAY
返回[ABC-123,GHI-678,JKL-901]
,表明remove
很可能不作为数组上的方法;)
关于SO有一个类似的问题,但对我没有帮助: velocity template drop element from array
解决方法
问题出在列表的初始化上。应该是:
#set($linkedWIARRAY = ["ABC-123","DEF-345","GHI-678"])
也就是说,每个字符串都应该用双引号引起来,而不是整个字符串。