一類問題的方法,任何人都可以解釋DEF功能/ Grails中
def login() {
//some codes here
}
之間的差,以
def login = {
//some codes here
}
Grails中。謝謝!
一類問題的方法,任何人都可以解釋DEF功能/ Grails中
def login() {
//some codes here
}
之間的差,以
def login = {
//some codes here
}
Grails中。謝謝!
區別在於:def login() { .. }
是一種方法,而def login = { ... }
是閉包。老版本的Grails控制器使用閉包進行操作,而後來的版本使用方法(這是您可能會看到這種差異的地方)。
如果您想了解更多信息,請閱讀Groovy關閉。
和方法首選作爲關閉操作。 –
這取決於你試圖解決什麼問題。閉包不同於方法,因此可以以不同方式使用。除非你有理由使用閉包,否則應該只使用一種方法。這是我對你的個人建議。 –
是的,這就是我所說的,在大多數情況下,方法優先於關閉,並且爲什麼grails團隊決定採用方法 –
對不起,我只是一個新的groovy和grails編程。 – Raven
http://stackoverflow.com/questions/9205209/why-should-grails-actions-be-declared-as-methods-instead-of-closures-and-what-di – Vahid
你很可能想堅持使用方法除非你有一些非常具體的用例,否則grails不會推薦關閉操作,甚至可能在將來的版本中被刪除。 –