키오스크의 핵심은 주문 양식 페이지입니다. 이곳에서 고객이 실제로 아이스크림을 커스터마이즈합니다 - 사이즈를 선택하고, 토핑을 추가하고, 픽업 알림을 위한 전화번호를 입력합니다. 버블티 가게에서 음료 사이즈와 추가 옵션을 선택하는 메인 주문 화면처럼 생각해보세요.
이 페이지는 랜딩 페이지에서 전달된 쿼리 파라미터를 처리하고 직관적인 폼 경험을 제공해야 합니다:
이 주문 양식 페이지의 주요 구성 요소를 이해해봅시다:
🔍searchParams
Next.js는 URL 쿼리 파라미터를 포함하는 Promise로 searchParams를 제공합니다. serveType을 추출하여 랜딩 페이지에서 고객이 선택한 내용으로 주문 양식을 미리 채웁니다.
📝Load.Edit
Load.Edit 컴포넌트는 폼 상태 관리, 유효성 검사, 제출을 처리합니다. 데이터 저장을 위해 슬라이스에 연결되고 제출 시 자동으로 성공 페이지로 이동합니다.
↩️onCancel="back"
onCancel을 "back"으로 설정하면 취소 버튼이 이전 페이지로 돌아갑니다. 이를 통해 고객이 쉽게 마음을 바꿀 수 있습니다.
이제 아름다운 키오스크 경험을 위해 Template 컴포넌트를 스타일링해봅시다. 각 섹션은 아이콘이 있는 카드로 감싸져 있습니다:
Template 컴포넌트는 키오스크 친화적인 입력을 위해 다음 Field 컴포넌트들을 사용합니다:
📏Field.ToggleSelect: 단일 옵션(사이즈) 선택을 위한 크고 터치하기 쉬운 버튼
🍓Field.MultiToggleSelect: 시각적 피드백과 함께 여러 옵션(토핑)을 선택할 수 있습니다
📱Field.Phone: 형식 지정과 유효성 검사가 내장된 전화번호 입력