Grails 在web流状态内调用add方法时复制groovy列表
我使用webflow插件,在开始操作时在flow scope中创建2个变量,一个作为映射,另一个作为列表,然后我在状态之间拾取值,直到状态3我将DOS值添加到映射中,最后将映射添加到列表中,直到这里没有问题,问题是,当我尝试添加第二项时,当我将第二个映射添加到列表中时,所有以前的映射都会被覆盖 如果我更改,则在“开始”操作中创建的变量从流范围映射到会话范围映射不会被覆盖 有什么想法吗?我想使用流变量。谢谢你的时间Grails 在web流状态内调用add方法时复制groovy列表,grails,Grails,我使用webflow插件,在开始操作时在flow scope中创建2个变量,一个作为映射,另一个作为列表,然后我在状态之间拾取值,直到状态3我将DOS值添加到映射中,最后将映射添加到列表中,直到这里没有问题,问题是,当我尝试添加第二项时,当我将第二个映射添加到列表中时,所有以前的映射都会被覆盖 如果我更改,则在“开始”操作中创建的变量从流范围映射到会话范围映射不会被覆盖 有什么想法吗?我想使用流变量。谢谢你的时间 def controllerNameFlow = { init { flow.
def controllerNameFlow = {
init {
flow.items = [:]
flow.itemsCollection = []
}
on("success").to "state1"
on("error").to "done"
state1 = {
flow.item = "abc"
}
on("confirm").to "state2"
state2 = {
flow.presentation = "a123"
}
on("confirm").to "state3"
state3 = {
flow.items.put("item", flow.item)
flow.items.put("presentation", flow.presentation)
flow.itemsCollection.add flow.items
}
on("confirm").to "state1"
}
列表可以包含重复项,如果希望集合不包含重复项,则应使用集合而不是列表 查格 到 希望这有帮助
flow.itemsCollection = []
flow.itemsCollection = new HashSet()