Animated Hello Kitty Wink

๐Ÿถ๐Ÿพ/frontend

    [react] useParams() - ํŒŒ๋ผ๋ฏธํ„ฐ ๊ฐ€์ ธ์˜ค๊ธฐ

    ...URL/edit/1 edit์€ pathname, 1์€ parameter pathname์„ ๊ฐ€์ ธ์˜ค๊ธฐ ์œ„ํ•ด์„œ๋Š” useLocation(), parameter๋ฅผ ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” useParams()๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๋œ๋‹ค. ์‚ฌ์šฉ์ „์—๋Š” ๋ฐ˜๋“œ์‹œ ๋ผ์šฐํ„ฐ๊ฐ€ ์„ค์น˜๋˜์–ด ์žˆ์–ด์•ผํ•œ๋‹ค. (npm install react-router-dom) useParams() ์‚ฌ์šฉ import { useParams } from "react-router-dom"; const Edit = () => { const { id } = useParams(); return ( ) } export default Edit;โ€‹

    [react] useEffect - Lifecycle ์ œ์–ดํ•˜๊ธฐ

    react์—์„œ Lifecycle์ด๋ผ๊ณ ํ•˜๋ฉด mount, update, unmount๋กœ ๋‚˜๋ˆŒ ์ˆ˜ ์žˆ๋‹ค. mount - ํ™”๋ฉด์— ๋‚˜ํƒ€๋‚จ update - ์—…๋ฐ์ดํŠธ, ๋ฆฌ๋žœ๋” unmount - ํ™”๋ฉด์—์„œ ์‚ฌ๋ผ์ง useEffectํ•จ์ˆ˜๋Š” react hook์œผ๋กœ ํด๋ž˜์Šคํ˜• ์ปดํฌ๋„ŒํŠธ์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์—ˆ๋˜ ์ƒ๋ช…์ฃผ๊ธฐ ๋ฉ”์†Œ๋“œ๋ฅผ ํ•จ์ˆ˜ํ˜• ์ปดํฌ๋„ŒํŠธ์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๊ฒŒํ•œ๋‹ค. useEffect(function, deps) ํ˜•ํƒœ๋กœ 1. mount ์‹œ์ ์— ์‹คํ–‰ useEffect(() => { console.log("mount!"); },[]); - deps๊ฐ€ ๋นˆ ๋ฐฐ์—ด ์ผ ๊ฒฝ์šฐ mount ์‹œ์ ์— ์ฝœ๋ฐฑํ•จ์ˆ˜ ์‹คํ–‰ 2. update ๋˜๋Š” ์ˆœ๊ฐ„ ์‹คํ–‰ useEffect(() => { console.log("update!"); }); useEffect(()..