簡體   English   中英

速度:如何定義全局變量

[英]Velocity: How do I define a global variable

我嘗試在VM_global_library.vm文件中添加一堆#set($x=abc)語句,但是這些變量在我的VM模板中不可用。

我想為諸如圖像的基本路徑之類的東西設置一個全局變量。 這可能嗎?

您可以將該變量添加到VelocityContext中,然后每個人都可以使用,並將其用作全局變量。

您的VM_global_library.vm應該只包含Velocity宏,我懷疑在宏外部聲明的任何變量都將被忽略。

您可以創建一個包含所有全局變量的單獨的.vm文件,然后確保在需要它們的每個模板中#parse (或者可以編寫一些代碼來自動對其進行解析)。 例如,我之前已經對VelocityLayoutServlet進行了擴展,以執行類似的操作:首先合並“ global-variables.vm ”,將它們添加到Context中,然后繼續並渲染視圖。

如果您的全局變量只是簡單的字符串,則將它們放在屬性文件中並讓您的代碼將它們直接推入VelocityContext可能會更有效。

如果使用VelocityTools創建上下文,則可以輕松設置和管理全局數據。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM