4

我有一个复合组件(导航栏),它采用一个名为“activeIndex”的变量来确定哪个选项卡处于活动状态(显然)。导航栏是一个复合组件,其属性如下:

<!-- INTERFACE -->
<cc:interface>
    <cc:attribute name="tab"/>
</cc:interface>

<!-- IMPLEMENTATION -->
<cc:implementation>

    <pou:tabMenu activeIndex="#{cc.attrs.tab}" 
                 styleClass="margin-top-52">  

        <pou:menuitem value="Home" url="#" />  
        <pou:menuitem value="About" url="#"/> 
        <pou:menuitem value="iConsult" url="#"/> 
        <pou:menuitem value="Contact" url="#"/>  

    </pou:tabMenu> 

</cc:implementation>

所以从这里我可以使用以下方法传入活动选项卡:

<!-- Composite Navigation -->
<ez:anonymous-navigation tab="2"/>

问题是上面的代码放在一个template.xhtml中,我不想在2模板中指定tab值。相反,我需要从实现模板的页面传回这个值,然后将模板传递给上面的代码。

4

1 回答 1

5

使用<ui:param>. 这是一个启动示例:

client.xhtml

<ui:composition template="/WEB-INF/template.xhtml"
    xmlns="..."
>
    <ui:param name="tab" value="2" />
    ...
</ui:composition>

/WEB-INF/template.xhtml

<ez:anonymous-navigation tab="#{tab}"/>
于 2012-09-28T12:07:25.640 回答