์ผ | ์ | ํ | ์ | ๋ชฉ | ๊ธ | ํ |
---|---|---|---|---|---|---|
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 |
- ๊ฐ๋ฐ์๋ถํธ์บ ํ
- react
- ์๊ณ ๋ฆฌ์ฆ
- react-query
- javascript
- ์ค๋ ๋
- BFS
- #ํ๋ก์ ํธ์บ ํ #ํ๋ก์ ํธ์บ ํํ๊ธฐ #์ ๋ฐ๋ฏธ #์ค๋์ดํผํฉํ ๋ฆฌ #์ ์ง์ฝํฌ๋น #์ธ์ฌ์ด๋์์ #IT๊ฐ๋ฐ์บ ํ #๊ฐ๋ฐ์๋ถํธ์บ ํ #๋ฆฌ์กํธ #react #๋ถํธ์บ ํ #๋ฆฌ์กํธ์บ ํ
- ํ๋ก์ธ์ค
- App Runner
- ์๋ฐ์คํฌ๋ฆฝํธ
- ์ธ์ฌ์ด๋์์
- CS
- typescript
- ํ์ ์คํฌ๋ฆฝํธ
- ์ค๋์ดํผํฉํ ๋ฆฌ
- ์ ๋ฐ๋ฏธ
- ํ๋ก๊ทธ๋๋จธ์ค
- ํด์
- ์ ์ง์ฝํฌ๋น
- IT๊ฐ๋ฐ์บ ํ
- React.js
- ํ๋ก์ ํธ์บ ํ
- ๋ฉ๋ชจ๋ฆฌ
- html
- cs #๋คํธ์ํฌ
- ๋คํธ์ํฌ
- ip
- Algorithm
- ๋ฆฌ์กํธ
- Today
- Total
Bin's Blog
[์ ๋ฐ๋ฏธx์ค๋์ดํผํฉํ ๋ฆฌ] 10์ฃผ ์์ฑ ํ๋ก์ ํธ ์บ ํ 23์ผ์ฐจ - ๋ฆฌ์กํธ(4) ๋ณธ๋ฌธ
[์ ๋ฐ๋ฏธx์ค๋์ดํผํฉํ ๋ฆฌ] 10์ฃผ ์์ฑ ํ๋ก์ ํธ ์บ ํ 23์ผ์ฐจ - ๋ฆฌ์กํธ(4)
hotIce 2023. 6. 28. 18:02
๐ ์ปค์คํ ํ (Hook)
๐ ์ปค์คํ ํ (Custom Hooks)์ ์ฌ์ฉ์๊ฐ ์ง์ ๋ง๋ ํ ์ ๋งํ๋ฉฐ, ์ฌ๋ฌ ์ปดํฌ๋ํธ ๊ฐ์ ์ํ ๋ก์ง์ ์ฌ์ฌ์ฉํ๋ ๋ฐ ์ฌ์ฉ๋๋ค.
๐ ์ปค์คํ ํ ์ ๊ธฐ๋ณธ ํ ์ ํ์ฉํ์ฌ ๋ง๋ค์ด์ง๋ฉฐ, ์ด๋ฆ์ "use"๋ก ์์ํด์ผ ํ๋ค.
๐ ์ฌ์ฉ์์
๐ ์ปค์คํ ํ
import {useState} from "react"
function useCounter(initialCount) {
const [count, setCount] = useState(initialCount);
const increment = () => {
setCount(count + 1)
}
return {count, increment};
}
export default useCounter
๐ ์ปดํฌ๋ํธ
import useCounter from "../hooks/countHook";
import React from "react";
function UseCount() {
const { count, increment } = useCounter(100)
return (
<div>
<p>์นด์ดํธ : {count}</p>
<button onClick={increment}>์ฆ๊ฐ</button>
<div>
)
}
export default UseCount
๐ป ์ฝ๋ ์งํ ์์
๐ ์์ ์ปค์คํ ํ ์์ useCounter๋ผ๋ ํจ์๋ฅผ ๋ง๋ค๊ณ ์ธ์๋ ์ด๋ค ๊ฐ์ ๋ฃ์ด์ฃผ๋ฉด ๋๋ค.
๐ ๊ทธ ๊ฐ์ useState()ํจ์๋ก ๊ด๋ฆฌํ๋ค.
๐ increment()๋ผ๋ ํจ์๋ฅผ ๋ง๋ค์ด์ ๊ธฐ์กด์ ๊ฐ์ 1์ฉ ๋ํ๋ค.
๐ return ํ ๋ ๋ด๊ฐ ์ปดํฌ๋ํธ์์ ์ฌ์ฉํ๊ณ ์ถ์ ๊ฐ์ ๊ฐ์ฒด๋ก ๊ฐ์ธ์ค๋ค.
๐ ์ปดํฌ๋ํธ์์ ์ฒ์์ ํด๋น ํ์ผ์ import ํด์ค๋ค.
๐ useCounter์ 100์ด๋ผ๋ ์ซ์๋ฅผ ๋ฃ์ด์ฃผ๋ฉด ์ปค์คํ ํ ์์ ๊ทธ ๊ฐ์ ์ธ์๋ก ๋ฐ๋๋ค.
๐ ๊ทธ๋ฆฌ๊ณ ์ปค์คํ ํ ์์ ๋ฆฌํดํ ๊ฐ์ ๊ตฌ์กฐ๋ถํดํ ๋น์ ์ฌ์ฉํ๋ฉด ๋๋ค.
๐ ๊ทธ๋ฆฌ๊ณ ์ค๊ดํธ๋ฅผ ์ฌ์ฉํด์ ๊ฐ์ ๋ํ๋ด๋ฉด ๋๋ค.
๋ณธ ํ๊ธฐ๋ ์ ๋ฐ๋ฏธ-์ค๋์ดํผํฉํ ๋ฆฌ 10์ฃผ ์์ฑ ํ๋ก์ ํธ์บ ํ ํ์ต ์ผ์ง ํ๊ธฐ๋ก ์์ฑ ๋์์ต๋๋ค.