사용자정의 컴파일러

컴파일 프로세스는 사용자정의 컴파일러로 더욱 향상될 수 있습니다. 사용자정의 컴파일러를 호출하여 페이지 레이아웃, 섹션 레이아웃, 사용자정의 구성요소 또는 콘텐츠 레이아웃을 페이지로 컴파일하면 런타임에 구성요소를 동적으로 추가할 필요가 없습니다.

구성요소에 대한 사용자정의 컴파일러가 없거나 구성요소 컴파일러가 마크업을 반환하지 않는 경우 구성요소는 한번도 컴파일되지 않은 것처럼 런타임에 렌더링됩니다.

다음 구성요소에 대해 사용자정의 컴파일러가 지원됩니다.

  • 페이지 레이아웃
  • 섹션 레이아웃
  • 사용자정의 구성요소
  • 콘텐츠 레이아웃

다음 샘플은 페이지 레이아웃 및 콘텐츠 레이아웃 컴파일러를 보여줍니다. 섹션 레이아웃 및 사용자정의 구성요소 컴파일러는 콘텐츠 레이아웃 컴파일러와 동일한 모델을 따릅니다.

사용자정의 컴파일러가 없으면 구성요소는 render.js 파일을 통해 렌더링됩니다.

사용자정의 컴파일러가 존재하면 호출 후 결과 HTML이 페이지에 삽입됩니다. 사용자정의 컴파일러는 런타임 구성요소에 JavaScript 하이드레이션이 필요함을 나타낼 수도 있습니다. 이 경우 render.js 파일 내에서 구성요소의 hydrate() 함수가 호출됩니다. 구성요소에 하이드레이션이 필요하지 않으면 구성요소의 render.js 파일이 로드되지 않습니다.

주:

컴파일은 런타임 (게시된 사이트) 전용 기능입니다. 사이트가 편집, 탐색 또는 미리보기 모드로 표시될 때 페이지는 평소처럼 작동하며 모든 구성요소는 항상 동적으로 페이지에 추가됩니다.