본문으로 건너뛰기
Version: 4.1.1

Control

class Control

Flicking의 입력 장치 & 애니메이션을 담당하는 컴포넌트

Properties

controller

readonly

@egjs/axes의 이벤트를 처리하는 컨트롤러 컴포넌트

Type: AxesController

activeIndex

readonly

currentPanel의 인덱스 번호

Type: number

Default: 0

activePanel

readonly

현재 선택된 패널

Type: Panel | null

animating

readonly

현재 애니메이션 동작 여부

Type: boolean

holding

readonly

현재 사용자가 클릭/터치중인지 여부

Type: boolean

Methods

moveToPosition

Camera를 주어진 좌표로 이동합니다

Returns: Promise<void>

  • 해당 좌표 도달시에 resolve되는 Promise

Emits: Flicking#event:moveStart, Flicking#event:move, Flicking#event:moveEnd, Flicking#event:willChange, Flicking#event:changed, Flicking#event:willRestore, Flicking#event:restored, Flicking#event:needPanel, Flicking#event:visibleChange, Flicking#event:reachEdge

PARAMETERTYPEOPTIONALDEFAULTDESCRIPTION
positionnumberno이동할 좌표
durationnumberno패널 이동 애니메이션 진행 시간 (단위: ms)
axesEventobjectyesAxesrelease 이벤트

Throws: FlickingError

codecondition
POSITION_NOT_REACHABLE주어진 패널이 제거되었거나, Camera의 range 밖에 있을 경우
NOT_ATTACHED_TO_FLICKINGinit이 이전에 호출되지 않은 경우
ANIMATION_INTERRUPTED사용자 입력에 의해 애니메이션이 중단된 경우
STOP_CALLED_BY_USER발생된 이벤트들 중 하나라도 stop()이 호출된 경우

init

Control을 초기화합니다

Returns: this

PARAMETERTYPEOPTIONALDEFAULTDESCRIPTION
flickingFlickingnoFlicking의 인스턴스

destroy

Control을 초기 상태로 되돌립니다

Returns: void

enable

사용자의 입력(마우스/터치)를 활성화합니다

Returns: this

disable

사용자의 입력(마우스/터치)를 막습니다

Returns: this

updatePosition

async

resize 이후에 position을 업데이트합니다

Returns: Promise<void>

PARAMETERTYPEOPTIONALDEFAULTDESCRIPTION
progressInPanelnumbernoResize 이전 현재 선택된 패널 내에서의 카메라 progress 값

Throws: FlickingError

NOT_ATTACHED_TO_FLICKING init이 이전에 호출되지 않은 경우

updateInput

controller의 내부 상태를 갱신합니다

Returns: this

resetActive

activePanelactiveAnchornull로 초기화합니다

Returns: this

moveToPanel

async

Camera를 해당 패널 위로 이동합니다

Returns: Promise<void>

  • 해당 패널 도달시에 resolve되는 Promise

Emits: Flicking#event:moveStart, Flicking#event:move, Flicking#event:moveEnd, Flicking#event:willChange, Flicking#event:changed, Flicking#event:willRestore, Flicking#event:restored, Flicking#event:needPanel, Flicking#event:visibleChange, Flicking#event:reachEdge

PARAMETERTYPEOPTIONALDEFAULTDESCRIPTION
panelPanelno이동할 패널
optionsobjectno옵션 오브젝트
durationnumberno애니메이션 진행 시간 (단위: ms)
axesEventobjectyesAxesrelease 이벤트
directionDIRECTIONyesDIRECTION.NONE이동할 방향. circular 옵션 활성화시에만 사용 가능합니다

Throws: FlickingError

codecondition
POSITION_NOT_REACHABLE주어진 패널이 제거되었거나, Camera의 range 밖에 있을 경우
NOT_ATTACHED_TO_FLICKINGinit이 이전에 호출되지 않은 경우
ANIMATION_INTERRUPTED사용자 입력에 의해 애니메이션이 중단된 경우
STOP_CALLED_BY_USER발생된 이벤트들 중 하나라도 stop()이 호출된 경우