grails - 将taglib标记与MarkupBuilder一起使用

标签 grails taglib grails3 markupbuilder

我尝试结合Groovy Tablib调用Grails MarkupBuilber

MarkupBuilder html = new MarkupBuilder(out)

html.div {
    g.link(controller: "...", action: "...") {
        ...
    }
}

如Grails文档(http://docs.grails.org/latest/guide/theWebLayer.html#_rendering_a_response)中所述,此操作不起作用,因为taglib调用返回了一些文本,这些文本将被MarkupBuilder忽略

我也在github(https://github.com/grails/grails-gsp/issues/7)上的grails-gsp项目中发现了此问题,并且存在相同的问题。在本期中,解决方案是使用out <<

这是正确的解决方案和正确的方法还是还有其他可能性?

最佳答案

只需对添加到构建器语法的自定义文本使用mkp.yieldmkp.yieldUnescaped

MarkupBuilder html = new MarkupBuilder(out)

html.div {
    mkp.yieldUnescaped g.link(controller: "...", action: "...") {
        ...
    }
}

关于grails - 将taglib标记与MarkupBuilder一起使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47254665/

相关文章:

jsf - 通过注释声明组件处理程序

hibernate - GORM条件查询过滤列表中的ID

grails - Grails表单提交在 “params”生成空白条目

java - 在自定义 JSP 标记范围内嵌套 JSP

html - Groovy MarkupBuilder - 不产生原始文本

grails - 在Grails中的json View 中访问 Controller 参数

grails - UrlEncodedSlash 被 HttpFirewall 阻止(Grails 3.3.0.RC1;Spring-security-core 3.2.0.M1)

spring - 如何在 Grails 3 中将 ServletForwardingController 添加到 GrailsDispatcherServlet?

rest - 设计问题 : how to create a restful interface made out of multiple domain objects?

grails - heroku cleardb 插件中的连接关闭错误