>

이것은 어리석은 질문이지만, 나는

cc

예를 들어 cc.attrs.randomAttr과 같은 복합 컴포넌트를 참조하지만 나는 또한

component

암시적인 객체와 나는 그것을 들었 기 때문에 그것을 사용했지만 실제로 그것이 무엇인지 이해하지 못합니다. 누구든지 설명해 주시겠습니까?


  • 답변 # 1

    cc  평가시 처리중인 최상위 복합 구성 요소를 나타냅니다.

    component  단순히 UI 구성 요소를 처리하는 것입니다.

    따라서 복합 컴포넌트 내부에있을 때 cc   component 동안 '부모'구성 요소를 나타냅니다.  개별 구성 요소에서 사용될 때 해당 특정 인스턴스를 나타냅니다. 또는간단한경우 :

    cc  == component.getCompositeComponentParent(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는 두 줄에서 동일합니다.

    복합 컴포넌트의 여러 중첩이 포함 된 경우 상황이 조금 더 복잡해질 수 있습니다.

  • 이전 ios - 신속한 inputAccessoryView 재정의 버그
  • 다음 java - DBRef와 작동하지 않는 파생 쿼리