Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- modal
- makePermutation
- fcm push
- Icon
- 재귀함수
- 모달
- react-native
- C++98에러
- asyncstorage
- 리액트네이티브
- 리액트 네이티브
- JSON
- React
- 2023년 정처기 필기
- 리액트
- fcm 푸시
- 모달에서뒤로가기
- Flatlist
- ReactNative
- 가격자릿수
- 순열
- touchableopacity
- 페이지리렌더링
- 뒤로가기구현
- vision-camera
- algorithm
- API
- 자동로그인
- 알고리즘
- TextInput
Archives
- Today
- Total
생각은 길게 코딩은 짧게
[React-Native] 버튼 활성화/비활성화 본문
728x90
TextInput에 모든 값이 입력되지 않았을 경우에 버튼을 비활성화
TextInput에 모든 값이 입력되었을 경우엔 버튼을 활성화 시켜보았습니다.
글자 수 제한을 구현했을 때 사용했던 삼항연산자를 사용하여 처리해주었습니다.
삼항연산자에 대해 자세한 설명이 필요하시면 요 포스팅을 보시면 됩니다
[React-Native] <Text> 글자 수 제한하기
리스트의 값들을 뿌려주는 중 해시태그의 길이가 늘어나면서 글이 레이아웃을 침범해버리는 현상이 나타났다 ! ✅ slice 함수 사용하기 배열로부터 특정 범위를 복사한 값들을 담고 있는 새로운
sayhee.tistory.com
✅ 삼항연산자 사용
{/* 상품 등록하기 버튼 부분*/}
{this.state.number.trim() != 0 && this.state.name.trim() != 0 && this.state.price.trim() != 0 && this.state.hashTag.length != 0 ?
(<TouchableOpacity activeOpacity={0.8} style={styles.okbtn} onPress={this.validateModal}>
<Text style={styles.btn_text}>상품등록하기</Text>
</TouchableOpacity>)
: (<TouchableOpacity activeOpacity={0.8} style={styles.btn}>
<Text style={styles.btn_text}>상품등록하기</Text>
</TouchableOpacity>)}
&&연산자를 사용하여 품명, 부품번호, 가격이 공백이 아니거나 hashTag는 배열이므로 length가 0이 아닐 때 활성화 된 상품등록 버튼을 보여지게 하고 공백이 하나라도 있을 경우 비활성화 된 버튼이 보여지게 됩니다.
✅ 버튼 CSS
//상품등록하기 버튼
btn: {//비활성화 버튼
height: 50,
backgroundColor: "#C9CCD1",
alignItems: 'center',
justifyContent: 'center'
},
okbtn: { //활성화 버튼
height: 50,
backgroundColor: "#1E90FF",
alignItems: 'center',
justifyContent: 'center'
},
'React Native' 카테고리의 다른 글
[React-Native] 통합 검색 기능 (0) | 2023.01.03 |
---|---|
[React-Native] ActivityIndicator ( 로딩화면 ) (0) | 2023.01.02 |
[React-Native]Floating Button 구현 (0) | 2022.12.20 |
[React-Native] TextInput value state값으로 가져오기 (0) | 2022.12.13 |
[React-Native] 자동 로그인 구현 (0) | 2022.12.02 |