์ด ๊ฐ์๋ React์์ ๋ฒํผ์ ๊ธฐ๋ฅ์ ์ถ๊ฐํ๊ณ state๋ฅผ ๋ณ๊ฒฝํ๋ ๋ฐฉ๋ฒ์ ๋ค๋ฃน๋๋ค. ์ข์์ ๋ฒํผ์ ํตํด ์ค์ตํด ๋ด ๋๋ค.
/*eslint-disable*/ ์ฃผ์ ์ถ๊ฐ<h4>{๊ธ์ ๋ชฉ[0]} <span>๐</span> 0</h4>
// JSX์์์ ํด๋ฆญ ์ด๋ฒคํธ ๋ฌธ๋ฒ
<div onClick={์คํํ ํจ์}>๋ด์ฉ</div>
์ค์ ํฌ์ธํธ:
1. onClick์ C๊ฐ ๋๋ฌธ์
2. ์ค๊ดํธ {} ์ฌ์ฉ
3. ํจ์๋ฅผ ๋ฃ์ด์ผ ํจ
// ๋ฐฉ๋ฒ 1: ๋ฏธ๋ฆฌ ํจ์ ์ ์
function ํจ์์() {
console.log(1)
}
<div onClick={ํจ์์}>์๋
ํ์ธ์</div>
// ๋ฐฉ๋ฒ 2: ์ต๋ช
ํจ์ ์ง์ ์์ฑ
<div onClick={function() { ์คํํ ์ฝ๋ }}>
<div onClick={() => { ์คํํ ์ฝ๋ }}>
() => {} ๋ function(){} ์ ๋์ผํ ๊ธฐ๋ฅlet [๋ฐ๋ด, ๋ฐ๋ด๋ณ๊ฒฝ] = useState(0);
ํต์ฌ:
๋ฐ๋ด = ๋ฐ๋ด + 1 โ)๋ฐ๋ด๋ณ๊ฒฝ(์๋ก์ดstate) ํ์์ผ๋ก ์ฌ์ฉ๋ฐ๋ด๋ณ๊ฒฝ(๋ฐ๋ด + 1)function App() {
let [๋ฐ๋ด, ๋ฐ๋ด๋ณ๊ฒฝ] = useState(0);
return (
<h4>
{๊ธ์ ๋ชฉ[0]}
<span onClick={() => { ๋ฐ๋ด๋ณ๊ฒฝ(๋ฐ๋ด + 1) }}>๐</span>
{๋ฐ๋ด}
</h4>
)
}
onClick={ํจ์} ํํ๋ก ์ฌ์ฉ