์ต๊ทผ ํฌ์ผ๋ชฌ API๋ฅผ ํ์ฉํด ๊ณต๋ถํ ๊ฒธ ํฌ์ผ๋ชฌ ๋๊ฐ์ ์์
ํ๊ณ ์๋ค.
ํฌ์ผ๋ชฌ ๋ฐ์ดํฐ๊ฐ ๋ฐฉ๋ํ๊ธฐ๋ ํด์ ์ฑ๋ฅ ์ต์ ํ์ ์ ๊ฒฝ์ฐ๊ฒ ๋์๋ค.
์ด๋ฐ์๋ ํ๋์ ํ์ผ์ ์ฌ๋ฌ ์ปดํฌ๋ํธ๋ค์ด ๋ฌถ์ฌ ์๋ค.
๊ทธ๋ฌ๋ค ๋ณด๋ ํ๋์ ์ปดํฌ๋ํธ์ ์ํ๊ฐ ๋ณ๊ฒฝ ๋ ๋ ๋ง๋ค ๋ฆฌ๋ ๋๋งํ๋ ๋ฌธ์ ๊ฐ ๋ฐ์ํ๊ฒ ๋์๋ค.
์ปดํฌ๋ํธ
state
๊ฐ ๋ณ๊ฒฝ๋๋ฉด ๋ฆฌ๋ ๋๋ง ๋๋ค.
- state, props์ ๊ฐ์ด ๋ณ๊ฒฝ ๋ ๋
- ์๋ก์ด ์ํ ๊ฐ์ด ์ถ๊ฐ ๋ ๋
์ฆ, ํ๋์ ํ์ผ์ ์ฌ๋ฌ ์ปดํฌ๋ํธ๊ฐ ๊ฐ์ด ์๋ค๋ฉด ๋ถํ์ํ ๋ ๋๋ง์ด ๋ฐ์ํ ์ ์๋ค๋ ๋ป์ด๋ค.
์๋ฅผ ๋ค์ด ๊ฒ์ ์ปดํฌ๋ํธ์ ๋๋ณด๊ธฐ ์์ด์ฝ, ๊ฒ์์ฐฝ, ํํฐ ๋ฒํผ์ด ๊ฐ์ด ์กด์ฌํ๋ค.
const SearchBox = () => {
return (
<SearchContainer>
<SearchWrap>
<IcSearch>
<Search width="35" height="35" />
</IcSearch>
<label htmlFor="search">
<SearchInput
type="text"
name="search"
placeholder="ํค์๋๋ฅผ ์
๋ ฅํด ์ฃผ์ธ์."
/>
</label>
</SearchWrap>
<FilterWrap>
<FilterBtn />
</FilterWrap>
</SearchContainer>
);
};
๊ฒ์์ฐฝ์ onChange ์ด๋ฒคํธ๋ฅผ ์ถ๊ฐํด ๊ฐ์ ์ ์ฅํ๋ ค๊ณ ํ๋ค.
onChange
์ด๋ฒคํธ๋ฅผ ์ถ๊ฐํ๊ณ input์ ๊ฐ์ keyWoerd
๋ผ๋ ์ํ์ ์ ์ฅํ๋ค.
const SearchBox = () => {
const [keyWord, setKeyWord] = useState('');
const onChangeKeyWord = (e) => {
setKeyWord(e.target.value);
};
return (
<SearchContainer>
<SearchWrap>
<IcSearch>
<Search width="35" height="35" />
</IcSearch>
<label htmlFor="search">
<SearchInput
type="text"
name="search"
value={keyWord}
onChange={onChangeKeyWord}
placeholder="ํค์๋๋ฅผ ์
๋ ฅํด ์ฃผ์ธ์."
/>
</label>
</SearchWrap>
<FilterWrap>
<FilterBtn />
</FilterWrap>
</SearchContainer>
);
};
ํ๋์ ์ปดํฌ๋ํธ์ ์ฌ๋ฌ ์ปดํฌ๋ํธ๊ฐ ๋ฌถ์ธ ์ํ์์ ๊ฒ์์ฐฝ์ ์ฌ์ฉํด ๋ดค๋ค.
์ด๋ฏธ์ง๋ฅผ ๋ณด๋ฉด ๊ฒ์์ฐฝ์ ์ํ๊ฐ ๋ณ๊ฒฝ ๋ ๋ ๋ง๋ค
์ฌ์ฉํ์ง ์๋ ๋๋ณด๊ธฐ ์์ด์ฝ, ํํฐ ๋ฒํผ๋ ๊ฐ์ด ๋ฆฌ๋ ๋๋ง ๋๋๊ฑธ ๋ณผ ์ ์๋ค.
์ด๋ฌํ ๋ฌธ์ ๋ก ์ปดํฌ๋ํธ ๋ถํ ์ด ์ค์ํ๋ค ์๊ฐํ๋ค.
const SearchBox = () => {
return (
<SearchContainer>
<SearchWrap>
<IcSearch>
<Search width="35" height="35" />
</IcSearch>
<SearchInput />
</SearchWrap>
<FilterWrap>
<FilterBtn />
</FilterWrap>
</SearchContainer>
);
};
SearchInput
์ผ๋ก ๊ฒ์์ฐฝ์ ํ๋์ ์ปดํฌ๋ํธ๋ก ๋ง๋ค๊ณ importํด ๋ถ๋ฌ ์๋ค. ๊ทธ๋ฌ๊ณ ๋ค์ ๊ฒ์์ฐฝ์ ์
๋ ฅํ ๊ฒฝ์ฐ
์ํ๊ฐ ๋ณ๊ฒฝ๋๋ ๊ฒ์์ฐฝ์๋ง ์ํฅ์ ๋ฐ๋๋ค.
๊ธํ ๋ ํ๋์ ์ปดํฌ๋ํธ์ ์ฌ๋ฌ ๊ธฐ๋ฅ์ ๋ฃ์ด ์์
ํ๊ณ
๋ค์์ ๋ฆฌํฉํ ๋งํด์ผ์ง ํ๋์์ผ๋ก ์งํํ๋ ๊ฒฝ์ฐ๊ฐ ๋ง์๋ค.
๊ฐ๋ฐ์ ๋ชจ๋๋ก ๋ ๋๋ง ์ํฉ์ ํ์ธํ๋
์์
์ ํ๋ฉด์ ์ปดํฌ๋ํธ ๋ถํ ํ๋๊ฒ ์ข์ ๊ฒ ๊ฐ๋ค๋ ์๊ฐ์ ํ๋ค.
์ด๋ฒ ์๊ฐ์ ํตํด ๋ถํ์ํ ๋ ๋๋ง์ ๋ง์ ์ ์์๋ค.