이 문서는 AI로 번역되었습니다. 부정확한 내용이 있을 경우 영어 버전을 참조하세요
EventDefinition은 워크플로우 내에서 특정 이벤트 트리거에 응답하는 이벤트 처리 로직을 정의합니다. 이벤트는 워크플로우 엔진에서 워크플로우 실행을 트리거하는 중요한 메커니즘입니다.
EventDefinition은 실제로 ActionDefinition의 별칭(alias)이며, 따라서 동일한 속성과 메서드를 가집니다.
타입: string
필수: 예
설명: 이벤트의 고유 식별자입니다.
워크플로우에서 on 속성을 통해 이벤트를 참조하는 데 사용됩니다.
예시:
타입: string
필수: 아니요
설명: 이벤트의 표시 제목입니다.
UI 표시 및 디버깅에 사용됩니다.
예시:
타입: (ctx: TCtx, params: any) => Promise<any> | any
필수: 예
설명: 이벤트의 핸들러 함수입니다.
이벤트의 핵심 로직으로, 컨텍스트와 파라미터를 받아 처리 결과를 반환합니다.
예시:
타입: Record<string, any> | ((ctx: TCtx) => Record<string, any> | Promise<Record<string, any>>)
필수: 아니요
설명: 이벤트의 기본 파라미터입니다.
이벤트가 트리거될 때 파라미터에 기본값을 채워 넣습니다.
예시:
타입: Record<string, ISchema> | ((ctx: TCtx) => Record<string, ISchema> | Promise<Record<string, ISchema>>)
필수: 아니요
설명: 이벤트의 UI 구성 스키마입니다.
UI에서 이벤트의 표시 방식과 폼 구성을 정의합니다.
예시:
타입: (ctx: FlowSettingsContext<TModel>, params: any, previousParams: any) => void | Promise<void>
필수: 아니요
설명: 파라미터 저장 전 실행되는 훅 함수입니다.
이벤트 파라미터가 저장되기 전에 실행되며, 파라미터 유효성 검사 또는 변환에 사용될 수 있습니다.
예시:
타입: (ctx: FlowSettingsContext<TModel>, params: any, previousParams: any) => void | Promise<void>
필수: 아니요
설명: 파라미터 저장 후 실행되는 훅 함수입니다.
이벤트 파라미터가 저장된 후에 실행되며, 다른 작업을 트리거하는 데 사용될 수 있습니다.
예시:
타입: StepUIMode | ((ctx: FlowRuntimeContext<TModel>) => StepUIMode | Promise<StepUIMode>)
필수: 아니요
설명: 이벤트의 UI 표시 모드입니다.
UI에서 이벤트가 표시되는 방식을 제어합니다.
지원되는 모드:
'dialog' - 다이얼로그 모드'drawer' - 드로어 모드'embed' - 임베드 모드예시:
워크플로우 엔진에는 다음과 같은 일반적인 이벤트 타입이 내장되어 있습니다:
'click' - 클릭 이벤트'submit' - 제출 이벤트'reset' - 초기화 이벤트'remove' - 삭제 이벤트'openView' - 뷰 열기 이벤트'dropdownOpen' - 드롭다운 열기 이벤트'popupScroll' - 팝업 스크롤 이벤트'search' - 검색 이벤트'customRequest' - 사용자 정의 요청 이벤트'collapseToggle' - 접기/펼치기 토글 이벤트