
Today, What I learned? ํ๋ก์ ํธ ์ค!.. api์์ ๊ฐ์ ธ์ค๋ xml ๋ฐ์ดํฐ๋ฅผ JSON ๋ฐ์ดํฐ๋ก ๋ณํํ๊ธฐ ์ํด ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ฌ์ฉํ๋ ๊ณผ์ ์ ์ ๋ฆฌํด ๋ณธ๋ค. ๋จผ์ ์ฌ์ฉํ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ ์ด๊ฒ์ด๋ค. https://github.com/connected-io/react-native-xml2js GitHub - connected-io/react-native-xml2js: XML to JavaScript object converter. XML to JavaScript object converter. Contribute to connected-io/react-native-xml2js development by creating an account on GitHub. github.com ๋ณํํ๊ธฐ const p..

Today, What I learned? ๋ฆฌ์กํธ ๋ค์ดํฐ๋ธ์์ ์ค์ฒฉ ๋ผ์ฐํฐ๋ก Stack์ ๋ง๋ค์ด๋๊ณ , ๋ด๋น๊ฒ์ด์ ์ ์ง์ ํ์ ๋ ์๋์ ๊ฐ์ ์๋ฌ๋ฅผ ๋ง๋ฌ๋ค. ์ค์ฒฉ ๋ผ์ฐํฐ์์๋ ๋ค๋น๊ฒ์ด์ ์ ์ด๋ค ์์ผ๋ก ์ง์ ํด์ฃผ์ด์ผ ํ๋์ง ์ ๋ฆฌํด๋ณด๋ ค๊ณ ํ๋ค. ๋ด๋น๊ฒ์ด์ ๊ตฌ์กฐ ์ฐ์ ๋ค๋น๊ฒ์ด์ ๊ตฌ์กฐ๋ Root๋ผ๋ ์คํ์์ ์คํ๊ณผ ํญ์ ํ๋๋ก ๋ฌถ์ด์ฃผ๊ณ ์๋, ์ค์ฒฉ๋ ๊ตฌ์กฐ๋ค. ์ค์ฒฉ๋ ๋ค๋น๊ฒ์ด์ ์ ์๋ฌ ๋ฉ์์ง์๋ ์๋ navigation ๊ด๋ จ ๋งํฌ๋ก ์ด๋ํด์ ๋ณด๋ฉด ์ผ๋ฐ์ ์ธ ๋ด๋น๊ฒ์ด์ ์ง์ ์ ์๋์ ๊ฐ์ด ํ ์ ์๋ค. navigation.navigate('ํ์ด์ง ์ปดํฌ๋ํธ๋ช '); ์ค์ฒฉ๋ ๋ด๋น๊ฒ์ด์ ์์๋ ๋จผ์ ์์ ๋ด๋น๊ฒ์ด์ ์ ์ง์ ํด ์ฃผ๊ณ screen์ด๋ผ๋ ์์ฑ์ผ๋ก ํ์ด์ง๋ช ์ ์ง์ ํ๋ค. navigation.navigate('Root', {..

Today, What I learned? ๋ฆฌ์กํธ ์ฟผ๋ฆฌ๋ฅผ ์ด์ฉํด์ ๋ฌดํ์คํฌ๋กค์ ์ ์ฉํด ๋ณด์๋ค. ๋ฌดํ์คํฌ๋กค๋ก ๋ฐ์ดํฐ๋ฅผ ๋ฐ์์ค๋ ๊ฒ์ ์์ง๊น์ง ์๋ํด๋ณด์ง ๋ชปํ๋ ๊ธฐ๋ฅ์ด์๋๋ฐ useInfiniteQuery ํ ์ ์ฌ์ฉํด์ ์๊ฐ๋ณด๋ค ์ฝ๊ฒ ์ ์ฉํ ์ ์์๋ค..! FlatList ๋จผ์ FlatList์์ ๋ฌดํ์คํฌ๋กค์ ์ํด ํ์ํ ๋ ๊ฐ์ง ์์ฑ์ ์ถ๊ฐํด์ผ ํ๋ค. onEndReached ๋์ ์ ๋๋ฌํ์ ๋ ์คํ์ํฌ ํจ์๊ฐ ๋ค์ด๊ฐ๋ ์์ฑ onEndReachedThreshold ์คํฌ๋ฆฐ ๋์ด์ ๋๋ฌํ๊ธฐ ์ ์ ์ผ๋งํผ ๋จผ์ fetch ํจ์๋ฅผ ๋น ๋ฅด๊ฒ ์คํ์ํฌ ๊ฒ์ธ์ง์ ๋ํ ์์ฑ. ์ซ์๋ก ๋ค์ด๊ฐ๋ค. 1์ผ ๊ฒฝ์ฐ์ ๋์ ๋๋ฌํ์ ๊ฒฝ์ฐ ์คํ๋๋ค. ๋ก์ง์ ๊ตฌ์ฑ ๋ฌดํ ์คํฌ๋กค์ด ์ด๋ค ๋ฐฉ์์ผ๋ก ์ด๋ฃจ์ด์ง๋์ง๋ฅผ ๊ฐ๋ตํ๊ฒ ์ ๋ฆฌํ๋ฉด ์ด๋ ๋ค. ๊ธฐ์กด ๋ฐฐ์ด ..

Today, What I Learned? ๋ฆฌ์กํธ ๋ค์ดํฐ๋ธ ๊ณต์๋ฌธ์์ ScrollView๋ฅผ ๋ณด๋ค๊ฐ ์์ ๋น๊ตํ๋ ๋ถ๋ถ์ด ์์ด ์ ๋ฆฌํด ๋ณด๊ณ , ํ์ฌ ๋ง๋ค๊ณ ์๋ ์ํ ์ฑ์ ScrollView ๋ถ๋ถ์ FlatList๋ก ๋ฐ๊ฟ๋ณด๋ ์์ ์ ๊ธฐ๋กํด๋๋ ค ํ๋ค. vs ์ ์บก์ฒ๋ ๋ฆฌ์กํธ ๋ค์ดํฐ๋ธ ๊ณต์ ๋ฌธ์์์ ๋ฐ์ทํด์จ ๋ถ๋ถ์ด๋ค. ์ดํด๋ณด๋ฉด ๋๋ต ์ด๋ฐ ๋ด์ฉ์ด๋ค. ScrollView๋ ๋ ๋ ์์ ๋ชจ๋ ์์ ์ปดํฌ๋ํธ๋ค์ ํ ๋ฒ์ ๊ฐ์ ธ์์ ์ฑ๋ฅ์ด ์ ํ๋๋ค. FlatList๋ ๋ ๋ ์์ ๋ณด์ด๋ ๊ฒ๋ค๋ง lazilyํ๊ฒ ๊ฐ์ ธ์ค๊ณ , ์คํฌ๋กค์ ๋ด๋ ค์ผ ๋ณผ ์ ์๋ ์์ดํ ๋ค์ ์ง์๋ฒ๋ฆฌ๊ธฐ ๋๋ฌธ์ ๋ฉ๋ชจ๋ฆฌ์ ์ฒ๋ฆฌ ์๊ฐ์ ์ ์ฝํ ์ ์๋ค. FlatList๋ ์ฌ๋ฌ ๊ธฐ๋ฅ์ ๋ด์ฅํ๊ณ ์๋ค. ํค๋ / ํธํฐ ์ง์ horizontal mode ์ง์ ๋ด๋ ค ๋น๊ฒผ์ ..

Today, What I learned? ์ปค์คํ ํ ์ ์ต์ํด์ ธ ๋ณด๊ธฐ ์ํด ํฌ๋๋ฆฌ์คํธ๋ฅผ ๋ฆฌํฉํฐ๋ง ํด๋ณด๊ธฐ๋ก ํ๋ค. ๊ธฐ์กด์ ์ฝ๋ ์ค์์ ํฌ๋๋ฆฌ์คํธ๋ฅผ ์ถ๊ฐํ๋ ๋ถ๋ถ์ ์ปค์คํ ํ ์ผ๋ก ๋ง๋ค์ด ๋ณด์๋ค. state์ dispatch, submitHandler ๊น์ง ๋ชจ๋ ๊ฐ์ ธ์๋ค. useInput import { useState } from 'react'; import { useDispatch } from 'react-redux'; import { nanoid } from '@reduxjs/toolkit'; import { __addTodos } from '../redux/modules/todoSlice'; const useInput = () => { const [title, setTitle] = useState('');..

Today, What I learned? ์น์ด๋ ์ฑ์ด๋ ์ด๋ค ์ ๋ณด๋ค์ ๋ก์ปฌ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ ์ฅํด์ผ ํ๋ ๊ฒฝ์ฐ๊ฐ ์๋ค. ํฌ๋๋ฆฌ์คํธ๋ฅผ ์์ฐฝ ๋ง๋ค๊ณ ์์ผ๋ ์ด๊ฑธ ์์๋ก ๋ค์๋ฉด, ์๋ก๊ณ ์นจํ๊ฑฐ๋ ์ข ๋ฃ ํ ๋ค์ ์คํํ์ ๋ ์ ์ ์์ฑํ๋ ๋ฆฌ์คํธ๊ฐ ๋จ์์๋ ๊ฒ์ด ํ์! ๋ธ๋ผ์ฐ์ ์ ๋ก์ปฌ ์คํ ๋ฆฌ์ง๊ฐ ์๋ค๋ฉด, React Native์์๋ AsyncStorage๋ฅผ ์ด์ฉํด์ ์ ์ฅํด๋ณผ ์ ์๋ค. Async Storage ๊ณต์ ๋ฌธ์์ ๋ค์ด๊ฐ ๋ณด๋ฉด ์๋์ ๊ฐ์ ๋ด์ฉ์ด ์๋ค. Data storage system for React Native. ๋ฆฌ์กํธ ๋ค์ดํฐ๋ธ๋ฅผ ์ํ ๋ฐ์ดํฐ ์คํ ๋ฆฌ์ง! ์ ์ฅํ๊ฑฐ๋ ๋ถ๋ฌ์ค๋ ๋ฐฉ์์ด Local Storage๋ฅผ ์ฌ์ฉํ๋ ๋ฐฉ์๊ณผ ๊ฑฐ์ ํก์ฌํ๋ค. https://react-native-async-storage.g..

React Native ๋ฆฌ์กํธ ๋ค์ดํฐ๋ธ๋ ๋ฆฌ์กํธ๋ก ๋ชจ๋ฐ์ผ ์ฑ์ ๋ง๋ค ์ ์๋ ํ๋ ์์ํฌ๋ค. ๋ชจ๋ฐ์ผ ์ฑ์ ๋ง๋ค ์ ์๋ ๋ค์ํ ์ธ์ด์ ํ๋ ์์ํฌ๋ค์ด ์์ง๋ง, ๋ฆฌ์กํธ ๋ค์ดํฐ๋ธ๋ฅผ ์ฌ์ฉํ๋ ์ด์ ๋ ํฌ๊ฒ ๋ ๊ฐ์ง๋ค. ๋น์ฉ ์ ์ฝ ๋ฆฌ์กํธ ๋ค์ดํฐ๋ธ๋ ์๋๋ก์ด๋, iOS ๋ค์ดํฐ๋ธ ์ฑ์ One Source, ์ฆ ํ๋์ ์ฝ๋๋ก ๋์์ ๋ง๋ค ์ ์๊ธฐ ๋๋ฌธ์ ์ฌ๋ฌ ๋น์ฉ, ์๊ฐ ์ธก๋ฉด์์ ํฌ๊ฒ ์ ์ฝ๋๋ค. ๋ฎ์ ๋ฌ๋์ปค๋ธ ๋ค์ดํฐ๋ธ ์ญ์ ๋ฆฌ์กํธ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํ๊ธฐ ๋๋ฌธ์ ๊ธฐ์กด์ ๋ฆฌ์กํธ๋ฅผ ์ฌ์ฉํ ์ค ์๋ ์ฌ๋์ด๋ผ๋ฉด ๋น ๋ฅด๊ฒ ๋ฐฐ์ธ ์ ์๋ค. ๋ฆฌ์กํธ ๋ค์ดํฐ๋ธ์ ์ต๊ทผ ์ํคํ ์ฒ๋ ์๋์ ๊ฐ์ด ๋ณ๊ฒฝ๋์๋ค. React Native ํ๋ก์ ํธ ๋ง๋ค๊ธฐ ๋ฆฌ์กํธ ๋ค์ดํฐ๋ธ๋ก ํ๋ก์ ํธ ๋ง๋๋ ๋ฐฉ๋ฒ์ ์ฌ๋ฌ ๊ฐ์ง๊ฐ ์๋ค. ๊ณต์ ๋ฌธ์์์๋ ํฌ๊ฒ ๋ ๊ฐ์ง๋ฅผ ์๊ฐํ๊ณ ์๋ค...

ํ๋ก์ ํธ๋ฅผ ๋ง์น๋ฉฐ ์ฃผ๋ง์ ๋ ํฌ๋ฆฌ์ค๋ง์ค๋ฅผ ํฌํจํ ๋ฑ 7์ผ!.. ์ ํํ๋ 6์ผ๊ฐ์ ํ๋ก์ ํธ๊ฐ ๋์ด ๋ฌ๋ค. ๋ฌด์ฌํ ๋ฐฐํฌ๊น์ง ๋ง์ณค๋ค๋ ์ ์์ ์์ฃผ ๋คํ์ค๋ฝ๊ฒ ์๊ฐํ๊ณ ์ฐ๋ฆฌ ํ์๋ค ๋ชจ๋ ๊ณ ์ํ๋ค. ์ด๋ฒ ํ๋ก์ ํธ๋ ์ญ์ ๊ฐ์ธ์ ์ธ ํ๊ณ ๋ฅผ ํด๋ณด๋ ค ํ๋ค! ์ฐ๋ฆฌ์ ํ๋ก์ ํธ๋ ์๋ ๋งํฌ์์ ํ์ธํด๋ณผ ์ ์๋ค. https://soolung-project.vercel.app/ ์ ๋ ์ ๋ soolung-project.vercel.app ๊ฐ์ธ์ ์ผ๋ก ์์ฌ์ ๋ ์ ์ด๋ฒ์๋ ๊ฐ์ธ์ ์ผ๋ก ์์ฌ์ ๋ ์ ์ ํํฐ๋์ ํผ๋๋ฐฑ์ ๋ฐํ์ผ๋ก ์ ๋ฆฌํด ๋ณธ๋ค. ๊ฒ์๊ธ ์์ฑ ํ ๊ฐฑ์ ๋ด๋นํํธ๋ ์๋์์ง๋ง ํจ๊ป ๋ก์ง์ด ์ง์ด๋ ๊ฒ์ ์ง์ผ๋ณด๊ณ ์ฐธ์ฌํ๋ ์ ์ฅ์ผ๋ก์.. ์์ฑ๋ ํ ๊ธ์ด ๋ฐ๋ก 1ํ์ด์ง์ ๋จ์ง ์๊ณ ๋ง์ง๋ง ํ์ด์ง๋ก ๋ค์ด๊ฐ๋ค๋ ๊ฒ์ ์๊ฒ ๋์๋ค. ํ์ธํด๋ณด๋..

์๋ฒ ์ฃผ์๋ฅผ ๋ ธ์ถ์ํค์ง ์๊ธฐ ์ํด .env ํ์ผ์ ์ด์ฉํด์ ํ๊ฒฝ๋ณ์๋ฅผ ์ ์ฉํด๋ณด๊ธฐ๋ก!.. ์์ฃผ ์ฐ๋ ๊ฒฝ๋ก๋ ๊ฐ์ด ์๋ค๋ฉด ํ๊ฒฝ๋ณ์๋ฅผ ์ด์ฉํด์ ํธํ๊ฒ ๊ฐ์ ธ๋ค ์ธ ์ ์๋ค. ๋จผ์ .env ํ์ผ์ ๋ง๋ค์ด์ ๋ณ์๋ฅผ ๋ง๋ค์ด์ค๋ค. ๋ณ์ ์ ์ธ ๋ฆฌ์กํธ์์ ์ฌ์ฉํด์ฃผ๋ ค๋ฉด ์์ REACT_APP ํค์๋๋ฅผ ๊ผญ ๋ถ์ฌ์ฃผ์ด์ผ ํ๋ค. url ์ฃผ์๋ฅผ ๋ฃ๋๋ค๋ฉด ๊ตณ์ด ๋ฐ์ดํ๋ก ๊ฐ์ธ์ฃผ์ง ์์๋ ๋๋ค! ๋ณ์ ์ฌ์ฉ ์๋์ ๊ฐ์ด process.env.[๋ณ์์ด๋ฆ]์ผ๋ก ์ฌ์ฉํ๋ฉด ๋๋ค. await axios.patch(`${process.env.REACT_APP_API_URL}/articleComment/${id}`,{...comment,}); ์ฒ์์๋ ์๋์ฒ๋ผ ์ฌ์ฉํ์๋๋ฐ ๊ณ์ 404 ์ค๋ฅ๊ฐ ๋ด๋ค.. ๐ ์ ์ธํ ๋ณ์๋ช ๊ทธ๋๋ก ๋ฃ์ด์ค์ผ ํ๋๋ฏ! awai..

ํ์ด์ง๋ค์ด์ ? ๋ฌดํ ์คํฌ๋กค? ํ๋ก์ ํธ๋ฅผ ์งํํ๋ฉฐ ๊ฒ์๊ธ ์ฝํ ์ธ ์๊ฐ ๋๋ฌด ๋ง์์ง ๊ฒฝ์ฐ๋ฅผ ๋๋นํด์ ํ์ด์ง๋ค์ด์ ์ด๋ ๋ฌดํ์คํฌ๋กค์ ์ ์ฉํด๋ณด๊ธฐ๋ก ํ๋ค. ๊ฒ์๊ธ ํน์ฑ์, ํ๋จ์ ๊ธ์ฐ๊ธฐ ๋ฒํผ์ด ํญ์ ์์ด์ผ ํ๊ธฐ ๋๋ฌธ์ ๋ฌดํ์คํฌ๋กค๋ณด๋ค๋ ํ์ด์ง๋ค์ด์ ์ด ๋ ์ ํฉํ๊ฒ ๋ค๋ ์๊ฐ์ผ๋ก!.. ํ์ด์ง๋ค์ด์ ์ ๊ตฌํํด๋ณด๊ธฐ๋ก ํ๋ค. MUI์ Pagination ์ปดํฌ๋ํธ MUI์์ ํ์ด์ง๋ค์ด์ ์ปดํฌ๋ํธ๋ฅผ ๊ฒ์ํ๋ฉด ๋ค์ํ ์คํ์ผ์ ํ์ด์ง๋ค์ด์ ์ปดํฌ๋ํธ๋ฅผ ํ์ธํ ์ ์๋ค. https://mui.com/material-ui/react-pagination/#main-content React Pagination component - Material UI The Pagination component enables the user to select ..
Comment