일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- algorithm
- asyncstorage
- C++98에러
- 2023년 정처기 필기
- 리액트네이티브
- 재귀함수
- 뒤로가기구현
- vision-camera
- 리액트 네이티브
- fcm 푸시
- API
- react-native
- 리액트
- 알고리즘
- 모달
- modal
- 자동로그인
- 페이지리렌더링
- JSON
- 모달에서뒤로가기
- TextInput
- fcm push
- ReactNative
- touchableopacity
- Icon
- makePermutation
- Flatlist
- React
- 순열
- 가격자릿수
- Today
- Total
목록React Native (36)
생각은 길게 코딩은 짧게

FCM ( Firebase - Cloud - Messaging ) 무료로 메시지를 안정적으로 전송할 수 있는 교차 플랫폼 메시징 솔루션 FCM을 이용해 각 유저들에게 알림메시지를 전송하기 위해서는 TOKEN , TOPIC을 활용해 푸시 메시지를 보낼 수 있다. ✔️ TOKEN이란? 앱이 FCM 서버와 통신하기 위해 사용되는 고유한 식별자 앱은 서버와 통신할 때 토큰을 사용하여 FCM 서버에서 앱을 식별하고, 이를 통해 메시지 전송을 할 수 있다. FCM의 토큰은 앱이 설치된 디바이스마다 고유하며 앱이 설치된 디바이스를 추가하거나 삭제할때 토큰이 변경될 수 있다. ( refresh ) 서버는 이러한 FCM 토큰을 사용하여 특정 디바이스에 메시지를 전송할 수 있다. TOKEN은 Firebase에서 관리하는 ..

비밀번호 변경 후 재로그인을 위해 다시 로그인 창을 불러야하는 경우가 생겼다. React Native에서 page를 navigate하는 것은(this.props.navigation.navigate('Login')) stack 구조로 진행이 되기 때문에 이미 didMount된 상태의 페이지가 불러져 다시 componentDidMount가 실행 되지 않는다. 해결 전 해결 후 해결 전 문제점 : componentDidMount가 다시 실행되지 않아 이미 로그인 되어있는 창이 불러졌다 💡 this.props.navigation.addListener() 사용 componentWillUnmount 는 컴포넌트가 화면에서 사라지기 직전에 호출된다. 정보 수정 창이 화면에서 사라질 때 login 창이 포커스 되면 a..
앱을 제작하면서 정해진 함수를 이 페이지 저 페이지 쓰는 경우가 생겼다 ( 택배사, 가격 자릿수 등등 ) 이때 유지보수가 쉽도록 관리해줄 수 있는 소스를 짜면 편하다는 것을 배웠다! export default class FunctionUtil { static getPrice(data){ return data.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ',') } } 가격 자릿수를 메겨줄 때 사용하는 함수이다. util 폴더 안에 FunctionUtil.js를 생성 후 받은 데이터를 조작해준 뒤 값을 return 시켜준다. 함수를 써줄 class 페이지에 import를 시켜주고 import FunctionUtil from '../../../util/libraries_fu..

Home에서 뒤로가기를 눌렀을 경우 앱을 종료할 수 있도록 BackHandler을 통해 구현해보았습니다. ✅ 안드로이드에서 뒤로가기 버튼을 사용하기 위해 BackHandler를 import import { BackHandler } from 'react-native'; ✅ 이벤트 리스너가 필요한 부분에 구현 componentDidMount() { BackHandler.addEventListener("hardwareBackPress", this.backPressed); } componentWillUnmount() { BackHandler.removeEventListener('hardwareBackPress', this.backPressed); } BackHandler.addEventListener : 이벤트..

API를 사용하여 사업자 등록증과 명함 사진을 서버에서 들고와보았습니다. ✅ 로그인 되어있는 사용자의 아이디와 패스워드를 서버로 보내 사진을 가져오는 API //사업자등록증 사진을 가져오는 API async callGetCompanyImage(loginInfo) { let manager = new WebServiceManager(Constant.serviceURL + "/GetCompanyImage", "post"); manager.addFormData("data", { userID: loginInfo.userID, passwd: loginInfo.passwd, id: 2 }); let response = await manager.start(); if (response.ok) { return respon..

배송완료 신청할 경우 페이지를 이동하면서 자동으로 새로고침이 되어 배송등록완료 표시가 뜨도록 구현하였습니다. ✅ 로그인 되어있는 userID를 기반으로 판매목록을 불러오는 함수입니다. 판매목록 정보는 만들어둔 callGetSellsAPI를 사용하여 서버에서 가지고 옵니다. goSellGoods = () => { this.getUserID().then((value) => { this.callGetSellsAPI(value).then((response) => { this.setState({ soldoutContents: response }); }) }); } ✅ 여기서 봐야 할 부분은 DeliveryInfoList(배송정보입력) class로 goSellGoods함수를 goSellGoodsListener으로 ..

import React, { Component } from 'react'; import { View, Text, TextInput, TouchableOpacity, FlatList, ScrollView } from 'react-native'; import { styles } from "../../styles/address_search"; import Icon from 'react-native-vector-icons/MaterialIcons'; import PageIcon from 'react-native-vector-icons/AntDesign' import WebServiceManager from '../../util/webservice_manager'; class SearchAddress extend..

상품을 찜하고 찜한 목록을 볼 수 있도록 구현해보았습니다 현재는 찜하기 코드만 첨부해보았어요! ✅ 찜하기 버튼 state 값 (default : false) constructor(props) { super(props); this.state = { dipsbuttonclicked:false,//찜하기 } } ✅ 찜하기를 위한 API async callAddWishAPI(){ //찜하기 let manager=new WebServiceManager(Constant.serviceURL+"/AddWishList?user_id="+this.id+"&goods_id="+this.item.id); let response=await manager.start(); if(response.ok) return response...