0
궁금한 렌더링 문제가 있습니다. 오버레이 패널을 버튼과 연결하려고합니다. 버튼을 누르면 패널이 렌더링됩니다. 그러나 패널의 하위 구성 요소는 그렇지 않습니다. 패널이 표시되고 버튼을 두 번 클릭하면 하위 구성 요소가 렌더링됩니다. 같은 시간에 패널이 렌더링되지 않고 두 번 클릭하면 하위 구성 요소가 렌더링되지 않고 패널이 표시되지 않습니다.p : overlayPanel이 하위 구성 요소를 올바르게 렌더링하지 않습니다.
생성 된 html 및 계산 된 CSS는 painted/non-painted 구성 요소 모두에 대해 동일합니다. 문제의 위치를 알고 계십니까? 나는 약간의 설정이 빠졌습니까? 내가 뭔가를 간과했거나 버그입니까?
PrimeFaces 템플릿 :
<p:layoutUnit position="center">
<h:form>
<p:commandButton id="chooseLangBtn" value="Btn" type="button" />
<p:overlayPanel id="langPanel" for="chooseLangBtn" showCloseIcon="true" dismissable="true">
<p:selectOneListbox id="langSelect"
rendered="true"
value="#{selectOneLanguageView.language}"
converter="languageConverter"
var="t" filter="true"
filterMatchMode="startsWith">
<f:selectItems value="#{languageService.languages}"
var="lang"
itemLabel="#{lang.name}"
itemValue="#{lang}" />
<p:column>
<h:graphicImage width="22px" alt="#{lang.name}" library="main" name="images/flags/var/#{t.code}.svg"/>
</p:column>
<p:column>
<h:outputText value="#{t.name}" />
</p:column>
</p:selectOneListbox>
</p:overlayPanel>
</h:form>
'p : overlayPanel'은 자식 구성 요소를 '렌더링'하지 않고 스스로 렌더링합니다. 당신은 또한 '레이아웃'없이 (mcve를 만드는 단계에서) 시도 했습니까? 그리고 overlayPanel의 설명서를 읽으십시오 ... 거기에있는 구성 요소와 관련하여 거기에 뭔가가 있습니다 ... – Kukeltje
감사합니다. Kukeltje 당신의 대답을.하지만 테마 버그로 내게 보인다. 다른 테마로 변경하면 그림에 아무 문제가 없었다. 나는 사건을보고했다 : https://github.com/primefaces/themes/ issues/10 – JiangHongTiao
어떤 테마가 실패하고 어떤 테마가 괜찮습니까? 그리고 당신의 PF 버전은 무엇입니까? – Kukeltje