일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- javascript
- 타입스크립트
- codepush
- app.post
- xlsx-js-style
- interface
- generic
- react
- meatadata
- async
- 이진탐색
- code-push-standalone
- 스크롤이벤트
- 상속
- set
- map
- Spring
- reactnative
- supabase authentication
- supabase 페이지네이션
- 페이지네이션
- supabase auth
- extends
- 글또10기x코드트리
- TS
- array
- Filter
- 코드푸시
- 슬라이딩윈도우
- Next.js
- Today
- Total
목록React Native (20)
rhanziy

☕️ 사건의 배경현재 운영중인 서비스의 선물하기 기능은 상품을 구매하고 카카오톡 메세지 템플릿을 통해 보내고 싶은 사람에게 공유할 수 있다.공유 받은 사용자는 카카오톡 메세지 템플릿에 설정한 scheme과 parameter를 통해 url로 앱을 실행한다.앱에서는 Linking을 통해 url을 분기 처리하고 원하는 화면으로 이동한 후 유저 상태를 판단하고, 쿼리파라미터의 code를 통해 선물을 등록할 수 있다.Hot/Warm Start앱이 백그라운드거나 실행 중인 경우 Linking.subscribe를 통해 새로운 딥링크 이벤트를 감지하고 처리한다.Cold Start앱이 종료된 상태인 경우 실행될 때 한 번 Linking.getInitialURL()의 Promise객체에서 url을 반환처리하고 있다. 🚨..

App Center 지원 종료그동안 App Center의 API 서버를 통해 code-push를 사용해왔던 유저들에게 절망적인 소식이 있다. Visual Studio App Center가 2025년 3월 31일에 종료된다고 발표한 것... 현재 맡고있는 서비스도 appcenter cli를 통해 편리하게 앱의 소소한 개선사항을 반영하곤 했는데 이제 코드푸시를 태우려면 2가지 방법 중 택 1을 해야한다.1. 자체 서버 구축 혹은 MS Codepush Standalone 직접 설치 및 운영 (무료, 서버비 별도)App Center 의존성 없이 CodePush 번들과 업데이트 정보를 서버를 구축해 직접 생성하고 업로드하기 혹은 마이크로소프트의 클라우드 컴퓨팅 서비스 Azure를 통해 App Center를 대신하..

아이콘을 따로 저장하지않고 쉽게 불러와서 사용하기위해 라이브러리를 설치했다.yarn add react-native-vector-icons yarn add --dev @types/react-native-vector-icons ios그리고 생성된 node_modules/react-native-vector-icons 폴더에서 Fonts 파일은 xcode 프로젝트안에 드래그&드롭 info.plist 안에 아래 코드 추가 UIAppFonts AntDesign.ttf Entypo.ttf EvilIcons.ttf Feather.ttf FontAwesome.ttf FontAwesome5_Brands.ttf FontAwesome5_Regular.tt..
( 만 14세 이상 입니다. (필수) } /> )} /> 부모컴포넌트에서 controller로 자식 checkbox의 value를 제어했었는데, 기능은 잘 되지만 콘솔에 Ref Error가 떴다.React에서 Ref를 사용하는 경우VanillaJS와 달리 React에서는 특정 DOM을 직접적으로 수정해야하는 경우, Ref를 사용!특정 element에 포커스, 속성값을 관리할 때.특정 element에 애니메이션을 직접적으로 실행시킬 때.서드 파티 DOM 라이브러리를 React와 같이 사용할 때.출처: https://sambalim.tistory.c..

1. 웹뷰 이벤트 페이지로 넘어가야함.2. 개발서버에서 iOS에서는 접속이 정상적으로되고, 안드로이드에서는 자꾸 ERR_CONNECTION_REFUSED 가 떴다.3. 실서버는 정상 작동함.4. 접속할 url 은 http://localhost:4200~~~~ 시도 1. localhost 부분을 10.0.2.2로 바꾸면 된다해서 replace시도해봤지만 여전히 접속안댐.시도 3. localhost 부분을 내 ip로 바꿔서 접속 시도해봤지만 안댐.시도 2. AndroidManifest에 useCleartextTraffic = true 를 추가해보라했지만 안댐.// AndroidManifest.xml // 어쩌구 해결책해당 포트가 아직 ADB에 전달되지 않았기 때문에 로컬 개발 서버에 액세스할 수 없는..

검색 서치바에 키워드를 입력하면 등록된 상품 중, 해당 키워드가 include되어있으면 리스트에 노출하는 기능을 구현했었다.보통 이런 경우에 사용자가 input에 입력하거나 지울때마다 키워드가 있는지 없는지 비교를 하는데, 과도한 요청 및 처리를 수행하게 될 경우 발생할 수 있는 성능 저하를 막기 위해 연속적으로 호출되는 함수 중 마지막 함수만 호출하는 debounce 기법을 사용하여 제어한다. 기존 구현했던 방식은 setTimeout을 이용해서 키워드 입력 후 일정 지연시간 후에 리스트를 노출해주었었다. const [inputKeyword, setInputKeyword] = useState(keyword ?? ''); useEffect(() => { const debounce = setTime..
그냥 flatList ref는 보통 이렇게 사용했을거다.ref = useRef(null);ref.current?.scrollToOffset({offset: 0, animated: true}) 그런데 useAnimatedRef를 쓰면 ref.current에 scrollToOffset이 없다고 타입에러가 뜰것임. const ref = useAnimatedRef>(); ref.current?.scrollToOffset({offset: 0, animated: true}); 원래 쓰던대로 쓰는방법은 바로~ react-native-reanimated.d.ts 파일에 가서 수정해주면댐.export interface FlatList extends ReactNativeView {}-> ..
하하 ~ 한때 잠시 했던 스프링과 jsp로 프로젝트를 진행하다가 리액트 네이티브를 하게되니,,, 사용자 인풋값을 처리하는 방식이 달라서 헷갈렸다!! 리뷰 댓글 기능을 만들다가 마주치게 된 에로사항인데, 일단 리뷰의 데이터타입은 이렇다. interface IReview { id: number; rating: number; content: string; images: string[]; createdAt: string; reviewer: { id: number; nickname: string; profileImage: string; }; store: { name: string; region: { name: string; }; }; product: { name: string; image: string; }; c..