我正在使用grails web flow插件,我创建了一个变量
flow.sales = [] as List
在整个流程中,用户将项目添加到flow.sales变量,在某些时候用户可以从flow.sales中删除项目
flow.sales.remove someItem
问题是在视图中我从flow.sales列出项目没有变化,删除的项目仍然存在,我尝试了这段代码。
println flow.sales //[1,2,3,4,5]
flow.sales.remove item //5
println flow.sales //[1,2,3,4]
检查项目是否已删除。我尝试了几种方法来逐项删除索引。我感谢您的帮助。感谢
答案 0 :(得分:0)
使用
flow.sales -= someItem
如果项目仅仅是整数,如示例中所示。
List上的 remove()
获取需要删除的元素的索引。在上面的答案中,使用了minus()
运算符。另请注意,删除项目后会创建一个新列表,而不会改变原始列表,因此会将其分配回flow.sales
。
还要记住,[]
表示一个ArrayList,因此不需要强制它as List
。