Grails 在标记库中,如何检索正文的原始文本代码?

Grails 在标记库中,如何检索正文的原始文本代码?,grails,taglib,Grails,Taglib,现在,当我定义一个新的TagLib时,body是某种类型的闭包 class MyTagLib { static namespace = "my" def tag = { attrs, body -> // here I would like to retrieve the actual text of the body not // its interpretation def text = body()

现在,当我定义一个新的TagLib时,body是某种类型的闭包

class MyTagLib {
   static namespace = "my"

   def tag = { attrs, body ->
           // here I would like to retrieve the actual text of the body not
           // its interpretation
           def text = body() 
   }

   def anothertag = { atts, body ->
       out << body ()
   }
}
类MyTagLib{
静态名称空间=“我的”
def标记={attrs,body->
//在这里,我想检索正文的实际文本
//它的解释
def text=body()
}
def anothertag={atts,body->

你说的“全文”是什么意思?你的意思是,包括
定义本身吗?不,只是主体的内容,在本例中应该是:这是一个示例>,但现在主体闭包在执行时将被吃掉并且只返回…我认为你不能这样做…但你到底想实现什么?也许还有另一种方法。:)我正在创建一个taglib从wrapbootstrap轻松创建和测试具有不同主题的新小部件。我试图做的是创建一个标记,该标记不仅会执行内部主体,而且会美化代码,这样测试应用程序不仅可以在当前主题中显示正在运行的小部件,还可以显示整个主题中使用的代码如果我的标记是demoCode,那么它将做2件事。让我们假设body可以理解一个名为content的方法;我的标记将是def s=body.content;out,我认为在Grails本身中不可能,因为GSP是编译为Groovy代码的。你必须找到另一种方法来做到这一点——可能将模板与应用程序一起发送并读取e文件以显示源代码。
<my:tag name="example">
   <h1>This is an example</h1>
   <my:anothertag/>
</my:tag>