簡體   English   中英

Grails:從g:if標簽調用taglib

[英]Grails: Call taglib from g:if tag

我有一個自定義標記庫,它返回一個布爾對象,以便我的GSP可以決定是否顯示一段HTML。 我想使用g:if標簽來檢查這個布爾值,因為我還需要檢查一些其他值(在taglib中不可訪問)。 但是,我不知道如何從標簽中實際調用taglib?

我試過了:

<g:if test="${<custom:tag/> && other.boolean}">

但這會引發錯誤。

我也嘗試過:

<g:if test="<custom:tag/> && ${other.boolean}">

但這也會引發錯誤。

taglib是怎樣的? 看它的用法應該如下:

class SomeTagLib {
    static namespace = "custom"
    static returnObjectForTags = ['tag']

    def tag = { attrs, body ->
        //returns an object (can be boolean)
    }
}

默認情況下,taglibs將返回StreamCharBuffer 如果你需要返回一個對象(如你的情況那樣用作條件語句的一部分),我猜你需要如上所示的returnObjectFromTags 它指定哪個標記偏離默認行為並返回一個對象。

另外,你應該使用Tim提到的taglib:

<g:if test="${custom.tag() && other.boolean}"> //should be the appropriate way

暫無
暫無

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

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