본문으로 건너뛰기

Gantt를 반응형으로 만들기

스마트폰에서 Gantt를 사용하는 것은 화면이 작아 한 번에 모든 데이터를 표시하기 어렵기 때문에 불편할 수 있습니다. 다만 Gantt의 레이아웃을 서로 다른 화면 크기에 맞춰 조정하도록 구성하면 데스크톱과 모바일 기기 모두에서 사용할 수 있습니다.

Gantt의 크기를 퍼센트 값으로 지정하면(예: width: 100%; height: 100%) 사용 가능한 컨테이너 크기에 맞춰 조정됩니다. 다만 기본적으로 각 그리드 열은 min_column_widthmin_grid_column_width 매개변수에 의해 최소 너비가 정의됩니다. 컨테이너의 크기가 최소 열 너비의 합보다 작아지면 그리드가 더 이상 축소되지 않습니다. 이로 인해 Gantt가 반응형이 아닌 것처럼 보일 수 있습니다. 아래의 섹션은 이를 해결하고 Gantt를 진정으로 반응형으로 만드는 방법을 설명합니다.

최소 열 너비 조정

한 가지 방법은 min_column_widthmin_grid_column_width의 값을 줄이는 것입니다. 이렇게 하면 컨테이너가 작아질수록 Gantt가 더 작아지도록 하여 반응형과 유사한 동작을 제공합니다:

gantt.config.min_column_width = 30;
gantt.config.min_grid_column_width = 30;

관련 샘플 Gantt. 반응형 컨테이너

작은 화면에 맞춘 레이아웃 조정

다른 방법은 사용 가능한 너비에 따라 Gantt 레이아웃을 전환하는 것입니다. 충분한 공간이 있으면 그리드와 타임라인이 모두 포함된 전체 레이아웃이 표시됩니다. 공간이 좁아지면 한쪽(그리드 또는 타임라인)만 표시되어 한정된 공간을 더 효율적으로 사용할 수 있습니다.

이 작업은 onGanttRender 이벤트를 사용하여 구현할 수 있습니다. 이벤트 핸들러는 Gantt 컨테이너의 너비와 현재 layout 구성를 확인하고 그에 따라 Gantt 레이아웃을 업데이트합니다.

관련 샘플 Gantt. 반응형 레이아웃: 화면 너비에 따라 그리드를 동적으로 숨기고 표시

Need help?
Got a question about the documentation? Reach out to our technical support team for help and guidance. For custom component solutions, visit the Services page.