๐ก ํน์ ๊ฐ์ ์ฌ์ฌ์ฉํ๊ณ ์ ํ ๋ ์ฌ์ฉํ๋ Hook
๐ก ์ด์ ์ ๊ตฌ์ถ๋ ๋ ๋๋ง๊ณผ ์๋ก์ด ๊ตฌ์ถ๋๋ ๋ ๋๋ง์ ๋น๊ตํด value๊ฐ์ด ๋์ผํ ๊ฒฝ์ฐ์๋ ์ด์ ๋ ๋๋ง์ value๊ฐ์ ๊ทธ๋๋ก ์ฌํ์ฉ
Memoization
๊ธฐ์กด์ ์ํํ ์ฐ์ฐ์ ๊ฒฐ๊ณผ๊ฐ์ ๋ฉ๋ชจ๋ฆฌ์ ์ ์ฅ์ ํด๋๊ณ ,
๋์ผํ ์ ๋ ฅ์ด ๋ค์ด์ค๋ฉด ์ฌํ์ฉํ๋ ํ๋ก๊ทธ๋๋ฐ ๊ธฐ๋ฒ
import { useMemo } from "react";
export default function App() {
const [val1, setVal1] = useState(0);
const [val2, setVal2] = useState(0);
const add = (num1, num2) => {
return Number(num1) + Number(num2);
};
const answer = useMemo(() => add(val1, val2), [val1, val2]);
return (
<div>
<input
value={val1}
type="number"
onChange={(e) => setVal1(Number(e.target.value))}
/>
<input
value={val2}
type="number"
onChange={(e) => setVal2(Number(e.target.value))}
/>
<div>{answer}</div>
</div>
);
}