๐บ Front End/- React, Next.js42 [Redux] ๋ฆฌ๋์ค๋ฅผ ๋ฐฐ์ฐ๊ธฐ ์ ์ ๋ฆฌ๋์ค์ ํ์์ฑ์ ๋ํด์ ์์๋ณด์. ์ฌ๊ธฐ ๋ฆฌ๋์ค๋ฅผ ์ ์จ์ผํ๋์ง ์์ฃผ ์ ๋ช ํ ๊ทธ๋ฆผ์ด ์๋ค. ๋ฆฌ๋์ค๋ Application์ ์ํ๋ฅผ Globalํ๊ฒ ๊ด๋ฆฌํด์ค๋ค๋ State Management Lib์ด๋ค. ๋๋ ๊ทธ๋ ์ง๋ง ๋ณดํต ์ฌ๋๋ค์ด ๋ฆฌ๋์ค๋ฅผ ์ฒ์์ผ๋ก ๋ง์ฃผํ๊ฒ๋ ๋๋ ์ด๋ค ํ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ ํ๋ ์์ํฌ์์ ๋ฌธ์ ์ ์ ๋ฐ๊ฒฌํ๊ณ ๊ทธ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํ ๋ฐฉ๋ฒ์ ๋ชจ์ํ๋ค ๋ง๋๊ฒ ๋๋ค. ๊ทธ ๋ฌธ์ ๋ผ๊ณ ํ๋ฉด ๋ฐ๋ก Local State Local State local state๋ ์ด๋ฆ์์๋ ์ ์ ์๋ฏ Global State์ ๋ฐ๋๋๋ ๋ง์ด๋ค. ์์ ๊ทธ๋ฆผ์์ Without Redux์ ํ์ดํ๋ก ์์ง์ด๋๊ฒ state์ด๊ณ , ์ด state๋ค์ด ์๋ค๋ก ํ ์นธ์ฉ๋ง ์์ง์ผ ์ ์๋ค๋ ๊ฒ์ ์ ์ ์๋ค. ์ด๊ฒ ๋ฐ๋ก Local State์ด๋ค. ์ ํํ๋ ์ด๊ฒ Local Sta.. 2020. 12. 1. [React-Spring ์ ๋๋ฉ์ด์ ] ๋ฆฌ์กํธ ์คํ๋ง์ผ๋ก 3D ์นด๋ ๋ง๋ค๊ธฐ ์ค๋ ํด๋ณผ ๊ฒ์ ์์ ๊ฐ์ด ์์ง์ด๋ ์นด๋ ๋ทฐ๋ฅผ ๋ง๋ค์ด๋ณผ ๊ฒ์ด๋ค. Index.js import React from 'react' import ReactDOM from 'react-dom' import { useSpring, animated } from 'react-spring' import './styles.css' const calc = (x, y) => [-(y - window.innerHeight / 2) / 20, (x - window.innerWidth / 2) / 20, 1.1] const trans = (x, y, s) => `perspective(600px) rotateX(${x}deg) rotateY(${y}deg) scale(${s})` function Card() { const [pro.. 2020. 11. 4. [React-Spring ๊ณต์ ๋ฌธ์๋ก ๋ฐฐ์ฐ๊ธฐ] useSpring ํ์ฌ React-Spring์๋ 5๊ฐ์ง Hook์ด ์๋ค. useSpring : Data๋ฅผ a ์์ b๋ก ์ด๋์ํค๋ ๋จ์ผ Spring์ด๋ค. useSprings : ๋ค์ค Spring์ผ๋ก List์ ๊ฐ์ด ๊ฐ๊ฐ์ Spring์ด ์์ง์ด๋ ๋ฐ์ดํฐ๋ฅผ ๋ค๋ฃฐ ๋ ์ฌ์ฉ๋๋ค. useTrail : ํ๋์ ๋ฐ์ดํฐ์ ์ผ๋ก ๋ค์ค Springs์ ๊ตฌ๋์ํค๋ฉฐ, Spring์ ๊ทธ๋ฅผ ๋ฐ๋ฅด๊ฑฐ๋ ๋ค๋ฅธ ๊ฒ๋ค์ ์ด๋๋ค. useTransition : mount/unmount๋ฅผ ๋ค๋ฃฌ๋ค. useChain : ๋ค๋์ ์ ๋๋ฉ์ด์ ์ ํจ๊ป ๋๋ฐํ ๋ ์ฌ์ฉ๋๋ค. useSpring ๊ฐ์ฅ ์ฌ์ด ๊ฒ์ useSpring์ด๋ค. ํ์ง๋ง ๋ค๋ฅธ ๊ฒ๋ค๋ ์ด useSpring์ ๊ธฐ๋ฐํ ๋์์ ์ํํ๊ธฐ ๋๋ฌธ์ ์ค์ํ๋ค. import {useSpring, animated} from.. 2020. 11. 4. [React-Spring ๊ณต์ ๋ฌธ์๋ก ๋ฐฐ์ฐ๊ธฐ] React-Spring ์๊ฐ React-Spring์ ์คํ๋ง์ ๋ฌผ๋ฆฌ์ ๊ธฐ๋ฐํ ์ ๋๋ฉ์ด์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ด๋ค. ๋๋ถ๋ถ์ UI animation์ ์ฌ์ฉ๋ ์ ์๊ณ , React-Spring์ ๋น์ ์ ์์ด๋์ด๋ฅผ ์์ง์ด๋ ์ธํฐํ์ด์ค๋ก ๋ง๋ค ์ ์๋ ์ถฉ๋ถํ ์ ์ฐํ Tools๋ฅผ ์ ๊ณตํ๋ค. ์ด ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ ํ๋์ ์ ๋๋ฉ์ด์ ์ ์ ๊ทผํ๋ ๋ํ์ ์ธ ๋ผ์ด๋ธ๋ฌ๋ฆฌ์๋ค. ์ด๊ฒ์ Christopher Chedau์ animated์ Cheng Lou์ react-motion์ ๋งค์ฐ ์๊ฐ์ ๋ฐ์๋ค. ๊ทธ๋ฆฌ๊ณ ์ ๋๋ฉ์ด์ ์ ๊ฐ๋ ฅํ ์ฑ๋ฅ๊ณผ React-motion์ ์ฌ์ฉ ํธ์์ฑ์ ๊ณ์นํ๋ค. ๊ทธ๋ฌ๋ ์ ๋๋ฉ์ด์ ์ ๋๋ถ๋ถ ํ์์ ์ด๋ฉฐ ๋ฐ์ ๋์์ ๋๋ถ๋ถ ์ ์ธ์ ์ด๊ณ ๋ฐ์ ์คํ๋ง ๋ธ๋ฆฌ์ง ๋ ๋ค ํ์์ ์ด๋ค. ๋น์ ์ ๋น์ ์ ๊ฒฌํด๋ฅผ ํ์ฑํ๋ ๋ฐฉ๋ฒ์ ๋ฐ๋์ ์ํฅ์ ๋ฏธ์น์ง ์๋ ์๊ณ ๋ช ์์ ์ธ ํจ.. 2020. 11. 4. [๋ฆฌ์กํธ Hook] useState ๋ก ์ฌ์ฉ์ ์ ๋ ฅ ๊ฐ์ ์ด์ฉํ์ฌ ๋ฐฐ์ด ๋ ๋๋ง ํ๊ธฐ. ์ง๋ ์๊ฐ ์ฐ๋ฆฌ๋ useState๋ฅผ ์ด์ฉํ์ฌ ํจ์ํ ์ปดํฌ๋ํธ์ ์ํ๋ฅผ ๋ถ์ฌํ๊ธฐ์ ๋ํด์ ์์๋ณด์๋ค. ํ์ง๋ง ์ง๋ ์๊ฐ useState์ ๋ํด์ ๋ง๋ง ๋ดค๊ธฐ ๋๋ฌธ์ ์์ง ์ค์ ์์ useState๋ฅผ ์ฌ์ฉํ๊ธฐ์๋ ํฑ์์ด ๋ถ์กฑํ ๊ฒ ๊ฐ๋ค๋ ๋๋์ ๋ฐ์๋ค. ์ค๋์ useState์ ๋ํด์ ํ์คํ ์ดํดํด๋ณด๊ณ ์ด๋ป๊ฒ ์ฌ์ฉํ ์ ์์์ง ์์๋ณด๋ ์๊ฐ์ ๊ฐ์ ธ๋ณด์. ์ต์ข ๊ฒฐ๊ณผ๋ฌผ ์ฐ๋ฆฌ๊ฐ ์ด๋ฒ ์๊ฐ ์ต์ข ์ ์ผ๋ก ๋ง๋ค ๊ฒ์ ์ฌ์ฉ์ ์ ๋ ฅ์ ๋ฐ๋ผ์ ๋ฐฐ์ด์ ๋ง๋ค๊ณ ์ด๋ฅผ ์ถ๋ ฅํ๋ ํ๋ฉด์ ๊ตฌ์ฑํด ๋ณผ ๊ฒ์ด๋ค. ๊ฒฐ๊ณผ๋ฌผ์ ์๋ง ์ด๋ ๊ฒ ๋์ฌ๊ฒ์ด๋ค. ์์ ์ ๋ ฅ(input form) ํผ ์์ฑ input ํผ์ onChange ๋ฉ์๋ ๊ตฌํ useState๋ฅผ ์ด์ฉํ์ฌ state๋ฅผ ๋ณ๊ฒฝ ์ฌ์ฉ์ ์ถ๊ฐ ๋ฒํผ์ onClick ๋ฉ์๋ ๊ตฌํ ๋ฐฐ์ด ๋ ๋๋ง ์ ๋ ฅ ํผ ์.. 2020. 10. 16. [React axios] React์ axios ๊ธฐ๋ณธ :: axios๋ก GET, POST, PUT, DELETE ์์ฒญ ๋ณด๋ด๊ธฐ ์ง๋ ์๊ฐ์๋ ์ ์ฐ๋ฆฌ๊ฐ axios๋ฅผ ์์์ผ ํ ๊น?์ ๋ํด์ ์์๋ณด์๋ค. [React axios] ๋ฆฌ์กํธ axios๋? :: HTTP-API ์ฐ๋์ ์ํ ๋ชจ๋ (axios vs Fetch API) ์ฐ๋ฆฌ๊ฐ ์ผ๋ฐ์ ์ธ ์๋ฐ์คํฌ๋ฆฝํธ์์ API๋ฅผ ์ฐ๋ํ๊ธฐ ์ํด์๋ ๋ณดํต fetch-Api๋ฅผ ์ฌ์ฉํ๊ณค ํ๋ค. ๋ฆฌ์กํธ ๋ํ ์๋ฐ์คํฌ๋ฆฝํธ built-in ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ค ํ๋์ธ fetch-api๋ํ ํ๋ฅญํ api ์ฐ๋ ๋ชจ๋์ด๋ค. ํ์ง๋ง wonit.tistory.com ์ด๋ฒ ์๊ฐ์๋ ์ค์ ๋ก axios๋ฅผ ์ฌ์ฉํ๊ธฐ ์ ์ axios์ ๊ธฐ๋ณธ์ ๋ํด์ ์์๋ณด๋ ค ํ๋ค. REST API REST API๋ ์ฐ๋ฆฌ๊ฐ ํ๊ณ ์ถ์ ์์ ์ ๋ฐ๋ผ ๋ค๋ฅธ ๋ฉ์๋๋ก ์์ฒญํ ์ ์๋ ๊ฒ์ ๋ค๋ค ์๊ณ ์์ ๊ฒ์ด๋ค. REST API์๋ ๋ํ์ ์ผ๋ก ๋ค์๊ณผ ๊ฐ์ HTT.. 2020. 10. 8. ์ด์ 1 2 3 4 5 6 7 ๋ค์