也许这是一个愚蠢的问题,但我用
cc
引用复合组件,例如 cc.attrs.randomAttr 但我也看到了
component
隐式对象,我使用它是因为我被告知要这样做,但我不太明白它的用途。谁能解释一下吗?
cc
指评估时正在处理的顶级复合组件。
component
只是正在处理 ui 组件。
因此,当在复合组件内部时,cc
指的是“父”组件,而component
当用于单个组件时,指的是该特定实例。或者为了simple cases:
cc
== component.getCompositeComponentParent(component)
,其中 Component 是构建复合组件的组件。
例如。考虑以下复合组件:
<html
xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:cc="http://java.sun.com/jsf/composite"
>
<cc:interface/>
<cc:implementation>
<h:outputText value="Own ID: #{component.id}, parent composite ID: #{cc.id}" /> <br/>
<h:outputText value="Own ID: #{component.id}, parent composite ID: #{cc.id}" />
</cc:implementation>
</html>
在 Facelet 上使用此方法将打印 2 个不同的“自己的”ID,即两个 outputText 组件的 ID,而两行上的复合 ID 将相同。
请注意,当涉及复合组件的多个嵌套时,事情可能会变得更加复杂。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)