我想添加一個元素到我的速度宏列表中。這是否只能避免出現在Velocity輸出中的「真實」文字?速度和忽略Java方法返回
#set($path = [])
#set($swallow = "a")
#set ($swallow = $path.add("blaablaa"))
我想添加一個元素到我的速度宏列表中。這是否只能避免出現在Velocity輸出中的「真實」文字?速度和忽略Java方法返回
#set($path = [])
#set($swallow = "a")
#set ($swallow = $path.add("blaablaa"))
我有特倫斯·帕爾(的StringTemplate父親)誰在an Artima interview和a good paper on model-view separation相關意見達成一致。
模板應限於純粹的演示文稿。就像我們不應該在模型中放置表示層細節一樣,我們不應該將數據操作放在模板中。這樣做通常最終會使維護變得更加困難,甚至使得難以知道在哪裏要做維護。
基於我對Velocity和StringTemplate的經驗,我強烈建議在你的問題(數據操作的製造物使得模板更復雜)中作爲提示並將所有對數據結構的操作移動到Java中層。
是的,如果你想關閉它,那麼#set是你的朋友。很多人這個快捷方式,像這樣一個宏:
#macro(call $this)#set($stfu = $this)#end
然後你可以縮寫爲
#call($path.add('blaablaa'))