gpt4 book ai didi

java - 如何在一个 ui :repeat? 中迭代两个数组

转载 作者:行者123 更新时间:2023-11-29 06:10:54 25 4
gpt4 key购买 nike

我需要在“标题”属性中插入值,但我想知道该怎么做,它应该是这样的:

<ui:repeat //..>
<h:graphicImage library="images" name="#{image}" title="#{title}" />
</ui:repeat>

我只能发送一个用逗号分隔的字符串:

<!-- calling the component -->
<cs:small_slider images="products/eletricity.jpg,products/water.jpg" >

<!-- the component with dynamic rendering -->
<cc:interface>
<cc:attribute name="images" type="java.lang.String" required="true" />
</cc:interface>

<cc:implementation>
<div id="slider-container">
<div id="slider-small">
<ui:repeat value="#{fn:split(cc.attrs.images, ',')}" var="image">
<h:graphicImage library="images" name="#{image}" />
</ui:repeat>
</div>
</div>
</cc:implementation>

有什么想法吗?

最佳答案

如果两个数组的相关项具有相同的数组索引,那么您可以通过varStatus 可用的数组之一的当前循环索引访问它们。的 <ui:repeat> .

用法:

<cs:small_slider 
images="products/eletricity.jpg,products/water.jpg"
titles="Electicity,Water"
/>

复合组件:

<cc:interface>
<cc:attribute name="images" type="java.lang.String" required="true" />
<cc:attribute name="titles" type="java.lang.String" required="true" />
</cc:interface>

<cc:implementation>
<ui:param name="images" value="#{fn:split(cc.attrs.images, ',')}" />
<ui:param name="titles" value="#{fn:split(cc.attrs.titles, ',')}" />

<div id="slider-container">
<div id="slider-small">
<ui:repeat value="#{images}" var="image" varStatus="loop">
<h:graphicImage library="images" name="#{image}" title="#{titles[loop.index]}" />
</ui:repeat>
</div>
</div>
</cc:implementation>

关于java - 如何在一个 ui :repeat? 中迭代两个数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6904941/

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