์ ๋ ํธ๋ฅผ ์ฌ์ฉํ๊ธฐ ์ํด ๋ค์๊ณผ ๊ฐ์ด jsx ๊ตฌ๋ฌธ์ ๋ง๋ค์์ต๋๋ค.
<select className="w150" onChange={handleChangeSelect}>
<option value="1" >0.1ํค</option>
<option value="2">0.2ํค</option>
<option value="3">0.3ํค</option>
<option value="4" selected={true}>0.4ํค</option> {/* ์ ํํ๋ ค๋ ๋ถ๋ถ! */}
<option value="5">0.5ํค</option>
</select>
๊ธฐ์กด html ์์ ๋ํดํธ ์ต์ ์ ์ ํํ๋ ค๋ฉด option ํ๊ทธ์์ selected ์์ฑ์ ์ฃผ์ด ๋์ ํ์์ต๋๋ค.
ํ์ง๋ง ๋ฆฌ์กํธ์์ ์ด์ ๊ฐ์ด ์ฌ์ฉํ๋ ค๊ณ ํ๋ค๋ฉด, ๋ค์๊ณผ ๊ฐ์ ์๋ฌ๋ฅผ ๋ฑ์ด๋ ๋๋ค.
React์์๋ selected ๋์ value๋ฅผ ์ฌ์ฉํฉ๋๋ค.
๋ํ selected์ ์ ํ๋ value ๊ฐ์ ๊ฐ์ ธ์ค๋ ค๋ฉด, onChange๋ฅผ ์ฌ์ฉํด์ผํฉ๋๋ค.
์์ ์์ค๋ฅผ ์์ ํด ๋ณด๋ฉด ์ด๋ ์ต๋๋ค.
<select className="w150" onChange={handleChangeSelect} value={'4'}>
<option value="1" >0.1ํค</option>
<option value="2">0.2ํค</option>
<option value="3">0.3ํค</option>
<option value="4">0.4ํค</option>
<option value="5">0.5ํค</option>
</select>
์์ ๋ด์ฉ์ผ๋ก๋ ์์ค๋ฅผ ์ ์ฉํ๊ธฐ ์ด๋ ต๋ค๋ฉด ์๋์ ๋ด์ฉ์ ๋ด์ฃผ์ธ์!
export default function App() {
const selectList = ["apple", "banana", "grape", "orange"];
const [Selected, setSelected] = useState("");
const handleSelect = (e) => {
setSelected(e.target.value);
};
return (
<div className="App">
<h1>Select in React</h1>
<div>
<select onChange={handleSelect} value={Selected}>
{selectList.map((item) => (
<option value={item} key={item}>
{item}
</option>
))}
</select>
<hr />
<p>
Selected: <b>{Selected}</b>
</p>
</div>
</div>
);
}
Selected ๋ ์ ํ๋ option์ด ๋ค์ด๊ฐ๋๋ค.
onChange๋ ์ ํ๋ option์ value ๊ฐ์ e.target.value ๋ก ๋ฐ์ ํ, Selected ์ setState ์์ผ์ค๋๋ค.
๋ง์ฝ ์ฒ์๋ถํฐ grape๊ฐ ์ ํ ๋ ์ฑ๋ก ์ค์ ํ๊ณ ์ถ๋ค๋ฉด Selected ๋ถ๋ถ์ default ๊ฐ์ ๋ฃ์ด์ฃผ๋ฉด ๋ฉ๋๋ค.
const [Selected, setSelected] = useState("grape");
'๊ฐ๋ฐ ๐พ > ReactJS' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
react draggable ๊ฐ๋จ ์ํ (0) | 2021.06.22 |
---|---|
๋ฆฌ์กํธ์์ setInterval์ ์ฌ์ฉํ์ฌ ํ์ดํ ํจ๊ณผ ์ฃผ๊ธฐ (0) | 2021.06.18 |
React div ์คํฌ๋กค์ Fix ํ๊ธฐ (Element scroll) (0) | 2021.06.11 |
React ์คํฌ๋กค์ Fix ํ๊ธฐ (Window scroll) (4) | 2021.06.08 |
React์์ ๊ฐ๋ก ์คํฌ๋กค ๊ตฌํํ๊ธฐ (react-horizontal-scrolling-menu) (2) | 2021.06.03 |