본문으로 건너뛰기

ZSTextField

Reanimated를 사용하여 다양한 스타일 애니메이션을 제공하는 텍스트 필드 컴포넌트입니다.

기본 사용법

import { ZSTextField } from '@0610studio/zs-ui';

<ZSTextField
boxStyle="underline"
label="닉네임"
value={nick}
inputBgColor={background.base}
labelBgColor={background.base}
focusColor={primary.main}
onChangeText={setNick}
textInputProps={{
multiline: false,
style: { color: text.primary },
}}
/>

<ZSTextField
boxStyle="outline"
label="아이디"
value={userId}
inputBgColor={background.base}
labelBgColor={background.base}
focusColor={primary.main}
onChangeText={serUserId}
textInputProps={{
multiline: false,
style: { color: text.primary, paddingTop: 8, paddingBottom: 10 },
}}
/>

<ZSTextField
boxStyle="inbox"
label="이메일"
value={email}
inputBgColor={background.base}
labelBgColor={background.base}
focusColor={primary.main}
onChangeText={setEmail}
textInputProps={{
multiline: false,
style: { color: text.primary },
}}
/>

Props

PropTypeDefaultDescription
typoTypoOptions'body.2'텍스트 스타일을 정의. 테마에 따라 자동 적용.
status'default' | 'error''default'입력 상태를 설정. 에러 시 라벨 및 테두리 색상이 변경됨.
valuestring''텍스트 필드의 입력 값.
onChangeText(text: string) => voidundefined텍스트 변경 이벤트 핸들러.
inputBgColorstring'white'입력 필드의 배경색.
labelBgColorstring'white'라벨의 배경색.
labelstring'Placeholder'텍스트 필드의 라벨 텍스트.
labelColorstring'#757575'라벨의 기본 텍스트 색상.
placeHolderColorstring'#B1B1B1'placeholder 텍스트 색상.
fontSizenumber테마에 따름입력 필드 텍스트 크기.
borderColorstring'#E7EDF0'테두리 색상.
borderRadiusnumber14테두리의 라운딩 반경.
focusColorstring'#007AFF'포커스 상태에서의 테두리 색상.
errorColorstring'#FF3B30'에러 상태에서의 테두리 및 라벨 색상.
paddingHorizontalnumber15텍스트 필드의 좌우 여백.
borderWidthnumber1.2테두리 두께.
errorMessagestringundefined에러 상태에서 표시할 메시지.
textInputPropsTextInputProps{}기본 React Native TextInput 속성.
boxStyle'outline' | 'underline' | 'inbox''outline'텍스트 필드 스타일.
innerBoxStyle'top' | 'middle' | 'bottom'undefined텍스트 필드가 그룹일 때 스타일을 정의.
disabledbooleanfalse텍스트 필드 비활성화 여부.
allowFontScalingbooleantrue텍스트 크기 자동 조정 허용 여부.
isTextAreabooleanfalse멀티라인 입력 여부.