日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

NVelocity的宏使用

發布時間:2024/4/17 编程问答 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 NVelocity的宏使用 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一、NVelocity使用參數
?示例:?
??1.建立宏
???#macro( test $range $arrayList )
????...
???#end
??2.調用宏
??#test([-9,-1] ["favorite", "color"])
?通過以上示例,你只需要一個為每一個需要傳遞的參數提供了名稱的#macro指令,這些參數用空格進行分隔。如上例中#macro( test $range $arrayList )“test”是宏名,$range $arrayList是參數。用"#"+宏名(參數1 參數2...)來調用宏。
??
??
二、NVelocity遞歸調用

?嵌套,最簡單的情況就是在NVelocity 中用到macro里調用另外一個macro,這是在實際代碼開發中使用得最頻繁的一種。遞歸,是一種特殊類型的嵌套,它是在NVelocity中的macro里調用自身,但這種情況并不太常見。
?
?#macro( recurs $depth )
??進入第 $depth 層<br/>

??#set( $depth = $depth - 1 )

??#if ( $depth > 0 )

???#recurs( $depth )

??#end

??#set( $depth = $depth + 1 )

??進入第 $depth 層<br/>

?#end
?#recurs( 3 )
?
?執行結果:
???進入第 3 層
???進入第 2 層
???進入第 1 層
???進入第 1 層
???進入第 2 層
???進入第 3 層
?注:在遞歸調用時,注意通常不要把一個對象的屬性傳為參數遞歸調用,上例中,如果$depth是一個對象的話,那么用#recurs( $depth.attribute)話,模板輸出時候往往有問題,而且又查不出來,這里記錄一下,忘以后不要出現這樣的錯誤。究其原因,我想是由于是object類型,往往在調用時認不出對象的類型吧(暫時只能這樣去理解了,沒深層次去研究過)。



本文轉自 netcorner 博客園博客,原文鏈接:?http://www.cnblogs.com/netcorner/archive/2010/07/07/1772980.html? ,如需轉載請自行聯系原作者

總結

以上是生活随笔為你收集整理的NVelocity的宏使用的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。