본문으로 건너뛰기

Default

Flicking의 가장 기본적인 사용법입니다. 필수 HTML 구조와 CSS, 기본 옵션값을 확인할 수 있습니다.

import Flicking from "@egjs/flicking";
import "@egjs/flicking/dist/flicking.css";
import "./styles.css";

const _flicking = new Flicking("#flick", {
  align: "center"
});

요약

기본 옵션값

아무 옵션 없이 생성하면 다음 기본값이 적용됩니다:

옵션기본값설명
align"center"패널 정렬 위치
horizontaltrue가로 방향 이동
circularfalse순환 모드 비활성화
boundfalse경계 제한 없음
duration500애니메이션 500ms
moveType"snap"스냅 이동 방식

필수 요소

요소필수 여부설명
.flicking-viewport필수Flicking 인스턴스가 연결되는 뷰포트 요소
.flicking-camera필수패널들을 담는 컨테이너. 실제로 이동하는 요소
패널 요소들필수.flicking-camera의 직계 자식들
flicking.css필수기본 스타일시트

상세 설명

HTML 구조

Flicking을 사용하려면 반드시 다음 구조가 필요합니다:

<div class="flicking-viewport">
<div class="flicking-camera">
<div class="panel">Panel 1</div>
<div class="panel">Panel 2</div>
<div class="panel">Panel 3</div>
</div>
</div>
  • flicking-viewport: 보이는 영역을 정의합니다. overflow: hidden이 적용됩니다.
  • flicking-camera: 패널들을 감싸며, 드래그/애니메이션 시 이 요소가 이동합니다.
  • 패널: 각 슬라이드 콘텐츠입니다. camera의 직계 자식이어야 합니다.

CSS Import

Flicking CSS를 반드시 import 해야 합니다:

// JavaScript
import "@egjs/flicking/dist/flicking.css";

// React
import "@egjs/react-flicking/dist/flicking.css";

// Vue
import "@egjs/vue3-flicking/dist/flicking.css";

주의사항

필수

flicking.css를 import하지 않으면 패널이 올바르게 배치되지 않습니다. viewport와 camera의 기본 스타일이 정의되어 있습니다.

구조 주의

패널 요소는 반드시 .flicking-camera직계 자식이어야 합니다. 중간에 다른 wrapper 요소가 있으면 동작하지 않습니다.

관련 링크

관련 데모