분류 전체보기
-
25. 소셜로그인하기 - 네이버 로그인 구현하기 (라이브러리 사용 안함)프로젝트/할일목록 앱 (RN) 2023. 11. 7. 14:25
https://reference-m1.tistory.com/368 [Front end] SNS 로그인 연동(네이버, 카카오) with React SNS 로그인 SNS 연계에 필요한 개발자 및 앱 등록은 간단하므로 샘플 소스 위주로 정리하였다. 실제 로그인 연동 및 사용자 정보까지 연동이 되는 React 코드이다. developers.naver.com NAVER Developers 네이 reference-m1.tistory.com import React, { useState, useEffect } from 'react' import { SafeAreaView, View, Text, StyleSheet, StatusBar, ScrollView, Dimensions, ImageBackground } from ..
-
24. 드롭다운 선택시 선택한 아이템 상단에 표시하기프로젝트/할일목록 앱 (RN) 2023. 11. 6. 18:14
import React, { useState, useEffect } from 'react' import { View, Text, StyleSheet, ActivityIndicator } from 'react-native' import { NavigationContainer } from '@react-navigation/native'; import { createNativeStackNavigator } from '@react-navigation/native-stack'; import { createBottomTabNavigator } from '@react-navigation/bottom-tabs'; import Icon from 'react-native-vector-icons/MaterialIcons' ..
-
23. 드롭다운 메뉴 가려지는 현상 해결하기프로젝트/할일목록 앱 (RN) 2023. 11. 6. 17:09
import React from 'react' import { View, FlatList, StyleSheet, Dimensions } from 'react-native' import DropdownItem from './DropdownItem' function DropdownList({ categories, selectCategory, top, left, rate = 1 }){ return ( { // 터치 시작점 설정 : 캡쳐링 방지 (추가) console.log('여기를 지나침') e.stopPropagation() // 터치 버블링 방지 }} > item} renderItem={({item}) => ( selectCategory(item, e)}/> // 아이템 각각의 뷰 화면 : 카테고리 선택시..
-
22. 할일목록이 없는 경우 상단에 날짜가 표시되지 않는 문제 해결하기프로젝트/할일목록 앱 (RN) 2023. 11. 6. 16:49
const styles = StyleSheet.create({ container: { padding: 10, backgroundColor: '#a8c8ffff', zIndex: 1, elevation: 1 }, dateText: { fontSize: 30, color: 'white' } }) components > DateHeader.js 파일을 위와 같이 수정한다. zIndex, elevation 값을 높게 설정하여 화면 레이어에서 좀 더 앞쪽에 표시되도록 한다.
-
21. 할일목록과 사용자 연동하기프로젝트/할일목록 앱 (RN) 2023. 11. 6. 14:51
* 로그인한 사용자의 할일목록만 조회하기 import React, { useEffect } from 'react' import { View, Button, StyleSheet, Alert } from 'react-native' import { GoogleSignin, GoogleSigninButton, statusCodes } from '@react-native-google-signin/google-signin' function LoginButton({navigation}){ const googleSigninConfigure = () => { GoogleSignin.configure({ webClientId: '137262950194-gcouccatiffjp4ei8aqfi05uruv5j4dl.apps.g..
-
20. 미래 날짜에 저장하는 투두가 오늘날짜에 저장되는 에러 해결하기프로젝트/할일목록 앱 (RN) 2023. 11. 6. 14:18
* 미래 날짜의 투두가 오늘날짜에 추가되는 로직오류 수정하기 홈화면에서 미래날짜에 투두를 추가하면 오늘날짜에 저장된다. 이를 해당하는 미래날짜에 추가하기 위하여 로직을 수정해보자! export const getTodosToday = (date, todos) => { const today = getToday(date) // 시간제외 const tomorrow = getTomorrow(getToday(date)) const todosToday = todos.filter(todo => todo.createdAt?.toDate() >= today && todo.createdAt?.toDate() time.js 파일에 아래 함..
-
19. 화면 레이아웃 깨지는 문제 해결하기프로젝트/할일목록 앱 (RN) 2023. 10. 31. 17:29
* 할일목록이 비어있는 경우 키보드가 보여질때 이미지가 밀려올라가는 문제 해결하기 import React from 'react' import { View, Text, Image, StyleSheet, KeyboardAvoidingView, Dimensions } from 'react-native' function Default(){ return ( 현재 할일목록이 비어있습니다. ) } const styles = StyleSheet.create({ container: { position: 'absolute', left: 0, top: 0, justifyContent: 'center', alignItems: 'center', width: Dimensions.get('window').width, height:..
-
18. 소셜로그인 에러 해결하기프로젝트/할일목록 앱 (RN) 2023. 10. 30. 18:07
* 소셜로그인 에러 리팩토링하기 로그아웃후 앱을 종료했다가 다시 키면 랜딩페이지가 보여야 하는데 홈화면으로 곧바로 이동한다. 이는 로그인 여부를 체크하는 부분에서 결과(result)가 의미없는 객체 {_h, 0, _i, _j: null, _k} 를 반환하기 때문이다. 아래와 같이 결과를 받은 다음에 콜백함수(then)에서 사용자 정보를 조회하면 사용자 토큰(token)이 출력되고 제대로 로그인 여부를 판별할 수 있다. const getUserInfo = async () => await GoogleSignin.getCurrentUser() useEffect(() => { const result = getUserInfo() // if(user){ // navigation.navigate('App') // }..