gpt4 book ai didi

grails - 将值注入(inject)内部标签

转载 作者:行者123 更新时间:2023-12-02 14:26:15 25 4
gpt4 key购买 nike

有两个嵌套标签,如何将变量注入(inject)内部标签绑定(bind)?

class CriteriaTagLib {

def criteria = { attrs, body ->
out << "start"
out << body.call()
out << "end"
}

def eq = {
out << "eq${group}"
}
}

并在 GSP 页面中:
<g:criteria>
<g:eq></g:eq>
<g:criteria>

问题是如何设置 group 的值(在 eq 内部使用)从 criteria 内部.

最佳答案

<q:criteria>可以将自己的上下文/数据作为请求范围属性(或页面范围),并通过<q:eq>在内部使用(不要忘记在结束标签上删除它)。像:

static final CONTEXT = this.class.name

def criteria = { attrs, body ->
def data = [
group: 'test 1'
]
request.setAttribute(CONTEXT, data)
out << "start"
out << body.call()
out << "end"
request.removeAttribute(CONTEXT)
}


def child = { attrs, body ->
def data = request.getAttribute(CONTEXT)
out << 'eq'
out << data.group
}

关于grails - 将值注入(inject)内部标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11814755/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com