์ผ | ์ | ํ | ์ | ๋ชฉ | ๊ธ | ํ |
---|---|---|---|---|---|---|
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 |
- error
- ํ๋ก๊ทธ๋๋จธ์ค
- ํ๋ก ํธ์๋
- node.js
- ํฌ๋กค๋ง
- JS
- ํ ์ดํ๋ก์ ํธ
- ์๊ณ ๋ฆฌ์ฆ
- ๋ฐฑ์ค
- HTML
- heapq
- ๋๋ฆผ์ฝ๋ฉ
- Python
- ๋ ธ๋ง๋์ฝ๋
- ํ๋ก์ ํธ
- KDT
- ๊ทธ๋ฆฌ๋
- ๊ฐ๋ฐ
- javascript
- mongodb
- ์ฝ๋ฉ
- ์ฝ๋ฉํ ์คํธ
- fe
- ๊ตญ๋น์ง์
- ํ์ด์ฌ
- react
- Til
- ์ฝ๋ฉ์ ํ
- ๋ชจ๊ฐ์ฝ
- CSS
- Today
- Total
๋ชฉ๋กreact (3)
๐ฑ → ๐ณ
useState vs useRef vs Variable useState ์ state ๊ทธ๋ฆฌ๊ณ useRef ์ ref ์ ๋ฆฌ์กํธ ๋ด๋ถ์ ๋ณ์๊ฐ ๋ ๋๋ง์ ๋ฐ๋ผ ์ด๋ค ์์ผ๋ก ๋ณํํ ๊น ์ธ ๊ฐ์ง ๋ฒํผ์ผ๋ก ๊ฐ๊ฐ state/ ref / var ๊ฐ์ ์ฌ๋ฆฌ๋ ์ปดํฌ๋ํธ๋ฅผ ๊ตฌ์ฑ ๊ฐ์ ๋ณํ ์์ด ์ปดํฌ๋ํธ ๋ฆฌ๋ ๋๋ง์ ์ํด์ ํ๋์ ๋ฒํผ์ ๋ ๋ง๋ฆ → ๊ฐ ๋ฒํผ์ ํด๋ฆญํ๋ฉด์ ํด๋น ๊ฐ์ ๋ณํ ๊ด์ฐฐ import { useRef, useState } from "react"; const Comparing = () => { const [countState, setState] = useState(0); const [render, setRender] = useState(0); const countRef = useRef(0); let count..
React.Fragment ์ค์ ๋ฆฌ์กํธ์์ ์ปดํฌ๋ํธ๋ฅผ ์กฐํฉํ ๋, ์ต์์์ div๋ฅผ ์ฌ์ฉํ์ง ์๊ณ ๋ฐํํด์ผํ๋ ๊ฒฝ์ฐ๊ฐ ์๊น css๊ฐ ๊นจ์ง๋ค๊ฑฐ๋, ํ ์ด๋ธ ์์ ์ฌ์ด์ div์์๊ฐ ๋ค์ด๊ฐ๋ฉด error๊ฐ ๋ฐ์ํ๋ ๊ฒฝ์ฐ React.Fragment๋ก return ๊ฐ์์ ์ต์์ tag ์ญํ ์ ํ๋ div ์์ ๊ธฐ import React from "react"; export default function ReactFragment() { return ( ์๋ ํ์ธ์! ๋ฐ๊ฐ์ต๋๋ค! ); } (react ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ ๊ธฐ๋ฅ์ด๋ฏ๋ก react ๋ผ์ด๋ธ๋ฌ๋ฆฌ ์ถ๊ฐ ํ์) React.Fragment๋ ๋ก ๋์ฒด ๊ฐ๋ฅ ! import React from "react"; export default function ReactFragment() ..
๐ JSX(Javascript XML) : Javascript์ XML์ ์ถ๊ฐํ ๋ฌธ๋ฒ ๊ฐ๋ฐ์๋ค์ด ๊ณผ๊ฑฐ DOM ๋ฐฉ์์ผ๋ก html์ ๊ทธ๋ฆฌ๋ค๋ณด๋ ๋ฐ๋ก ๋ฉ๋์ด ์๊ฐ์ -> ๊ทธ๋์ ๋ง๋ ๋ฌธ๋ฒ ๋ณดํต ๋ฆฌ์กํธ์์๋ง ์ฌ์ฉ html ๋ฌธ์ ๊ตฌ์กฐ๋ฅผ JS์์๋ ์ฌ์ฉ์ด ๊ฐ๋ฅํจ -> ๋ฐ๋ผ์ JS ๋ด๋ถ์์๋ html์ ์ง๋ฏ ์ฝ๋ ๊ตฌ์ฑ์ด ๊ฐ๋ฅํด์ง ๐ ๊ธฐ๋ณธ DOM ๋ฐฉ์์ผ๋ก html ๊ทธ๋ฆฐ ์ฝ๋ function HelloWorldButton() { const [isClick, setClickState] = React.useState(false); const text = isClick ? "It's clicked" : "Hello, React world"; return React.createElement( "button", { onClick..