Aikau 완전히 모든 위젯과 서비스를 분리하기 위해 발행/구독 모델을 사용합니다. "페이로드"는 주제에 게시되고 구독자가 소비하는 객체입니다. 단일 페이로드 유형은 없으며, 각 위젯과 서비스는 서로 다른 데이터를 포함하는 다른 페이로드를 기대할 수 있습니다. 우리는 위젯에서 기본적으로 사용하는 모든 주제를 작업하고이를 상수 모듈로 이동했으며 JSDoc은 각 주제에 대한 각 페이로드의 구조를 문서화합니다.
특정 질문에 대한 대답 - 목록 패키지의 위젯 (가장 기본적인 alfresco/lists/AlfList)은로드 할 데이터를 요청하는 페이로드를 게시하려고합니다. 목록은 모든 서비스에서 작동 할 수 있으므로 사용하려는 서비스에 따라 게시되는 주제가 달라집니다. 마찬가지로 게시 된 페이로드도 다릅니다.
예를 들어 CrudService를 사용중인 경우 페이로드에로드 할 URL이 있어야합니다. 다른 서비스의 대부분은 특정 데이터에 대해 작업하고 알려진 URL을 사용하여 해당 데이터를 검색하도록 작성 되었기 때문에 URL을 요구하지 않습니다. 사용자 정의 서비스를 쓰기를 포함하여 - - 모든 경우에 CrudService를 사용하는 유혹 할 수 있지만
, 많은 혜택이 전용 서비스를 사용하여 거기에 반환 된 데이터를 정상화하기 위해을 (코어의 많은 WebScript 기반하기 때문에 REST API는 공통 스키마를 따르지 않습니다.
서비스가 데이터를로드하면 응답 항목에 데이터를 게시합니다. 게시 된 페이로드에는 실제 목록 데이터가 포함됩니다. 다시 한번, CrudService는 데이터 스키마에 대한 "지식"을 갖지 않으므로 목록을 나타내는 데이터 배열을 포함하는 페이로드의 속성을 식별하기 위해 목록을 구성해야합니다 ("itemsProperty"속성 사용). 렌더링 됨).
GitHub의 Aikau tutorial은 목록 및로드 목록 데이터 (다양한 출처)를 사용하는 페이지를 만드는 과정을 통해 작동합니다. 아직 배우지 않은 경우 자습서를 작성하는 것이 좋습니다.
"currentData"속성을 통해 데이터가있는 목록을 초기화하여 데이터에 대한 XHR 요청을 할 필요가 없도록 할 수도 있습니다.