๐โ๏ธ์ ๊น๋ง์!
์ ๊ณผ์ 5 ๊ธ์ด ์๋๋ฉด.. ์์๋ฅผ ์ฐฉ๊ฐํด์ ์๋ชป ์ผ๊ธฐ ๋๋ฌธ์..!๐ญ๐ญ๐ญ๐ญ
์ผ๋จ ์ง๊ธ์ ๊ธฐ์ค์ผ๋ก (=์์ ๋ ์ดํ)
5๋ฒ์งธ ๊ณผ์ : ๊ฐ์ธ - ํ๊ธ ์์ ์นด์ดํธ
6๋ฒ์งธ ๊ณผ์ : ํํ - ์ ๋ ฌ๊ณผ์
7๋ฒ์งธ ๊ณผ์ : ๊ฐ์ธ - ํฌ๋๋ฆฌ์คํธ
์ ๋๋น.. 5๋ฒ์งธ ๊ณผ์ ์๊ธฐ๋ ์ถํ ์ฌ๋ฆด ์์ ..!
(5๋ฒ์งธ ๊ณผ์ ์ถ๊ฐํ๊ณ ๊ฐ๋๋ค๐ฅฐ ๋ฐ๋ก ๋ณด๊ธฐ)
โ์๊ฒ๋ ๊ฒ๊ณผ ๋๋์
- ์ปดํฌ๋ํธ ์ค๊ณ ํท๊ฐ๋ฆฌ์ง ๋ง์
- ํธ๋ฆฌํ antd
- filter ๋ฉ์๋
- typescript์ ์นํด์ง๊ณ ์ถ๋ค
๐ฅ๊ทธ๋์ ํด๋ณด๋ ์ ๋ฆฌ
1. ์ปดํฌ๋ํธ ์ค๊ณ ํท๊ฐ๋ฆฌ์ง ๋ง์
- components ํด๋ ์์๋ ์ฌ์ฌ์ฉํ ์ปดํฌ๋ํธ๋ฅผ ์ฃผ๋ก ๋ชจ์์ผ ํ๋ค. (๋ ์ด์์ ๊ธฐ๋ฐx)
- routes.js์์ import ํ๋ ์ปดํฌ๋ํธ๋ ์ฌ๋งํ๋ฉด components ์์ ์์ผ๋ฉด ์๋จ
- ๋ฐ์ดํฐ๊ฐ ๋ค๋ฅด๊ณ UI๊ฐ ๊ฐ์ผ๋ฉด ํญ์! ์ฌํ์ฉ ํ ์๊ฐ์ ํด์ผ ํจ
2. ํธ๋ฆฌํ antd
Ant Design : ์ค๊ตญ์์ ๋ง๋ ์น/์ฑ ๋์์ธ ๊ฐ๋ฐ์ ์ํ ํ๋ ์์ํฌ (ant.design์ docs ๋ณด๋ฌ๊ฐ๊ธฐ)
์ฌ์ฉํ๊ธฐ
$ npm install antd
import { DatePicker } from 'antd';
ReactDOM.render(<DatePicker />, mountNode);
์ด๋ฒ์ ์ฌ์ฉํ ๊ฒ
- Modal (https://ant.design/components/modal/)
- DatePicker (https://ant.design/components/date-picker/)
๊ฐ์ธ์ ์ผ๋ก DatePicker์์ ์์ฌ์ ๋(์ด๋ ค์ ๋) ๋ถ๋ถ์ ๋ ์ง๋ฅผ ์ ํํ์ ๋ input๋ถ๋ถ์ ๋ด ๋ง์๋๋ก ๋ณ๊ฒฝํ์ง ๋ชปํ ๊ฒ..ใ ใ
ํด๋ณด๋ คํ๋๋ฐ ๊ฒฐ๊ตญ ๋ชฐ๋ผ์ ๋ชปํ๋ค.. ์ง์ํ์ง ์๋๊ฑด์ง (๊ทผ๋ฐ ์ํด์ค๋ฆฌ๊ฐ ์๋ค๊ณ ์๊ฐ์ค)
์ฌ์ฉํด๋ณธ ์๊ฐ์ ์์ฒญ ํธํ๋ค! ๋์์ธ๋ฅ์.. ์ด์ ์ธ์ง์์๋ ๊ด์ฐฎ์
๊ทธ๋ฆฌ๊ณ ์ด๋ฐ ์์ด์ฝ๋ ์ง์ํด์ฃผ๋ ํ์ํ ๋ ํ์ฉํด๋ณด์! (https://ant.design/components/icon/)
3. filter ๋ฉ์๋
arr.filter(callback(element[, index[, array]])[, thisArg])
filter()
๋ ์ฃผ์ด์ง ํจ์์ ํ
์คํธ๋ฅผ ํต๊ณผํ๋ ๋ชจ๋ ์์๋ฅผ ๋ชจ์ ์ ๋ฐฐ์ด๋ก ๋ฐํํ๋ค.
const removeTodo = (id: number) => {
setTodoState((prevState) =>
prevState.filter((todo: Itodo) => todo.id !== id)
);
};
๊ทธ๋์ ์ ํํ ์์ดํ ์ ์ญ์ ํ ๋์๋ ์ ํํ ํด๋น id์ ์ผ์นํ์ง ์๋ ๊ฒ๋ค๋ง ๋ฐํํ๋ฉด ๋๋ค.
(์ : 1, 2, 3, 4, 5 ์ค์์ 2๋ฅผ ์ญ์ ํ๊ณ ์ถ์ผ๋ฉด 1, 3, 4, 5๋ง ๋ฆฌํด)
4. typescript์ ์นํด์ง๊ณ ์ถ๋ค
ํ์ ์คํฌ๋ฆฝํธ ์ฐ๋ฉด์ ์ค๋ฅ๊ฐ ๊ต์ฅํ! ๋ง์๊ณ , ๋ญ๊ฐ vscode์์ tsconfig.json์ด๋ eslintrc๋ ๊ณ์ ์ค๋ฅ๋๋ค๊ณ ๋ ์... ๊ดด๋ก์ ๋ค.
์ฝ๋์๋๋ฐ์ค์์๋ ์ ๋๋๋ฐ...ใ ใ ์ผ๋จ ์ ๋๊ฒฝ๋ก๊ฐ ์ ์๋๊ฑด ์ฐ์ ๊ธํ๋๋ก ์๋๊ฒฝ๋ก๋ก import ํ๋ค.
๊ทธ๋๋ ์ด๋ฒ ๊ณผ์ ์ ๊ฐ์ฅ ์ข์๋ ์ ์ ๋ค๋ฅธ ์ฌ๋์ ์ฝ๋๋ฅผ ๋ง์ด ๋ณผ ์ ์์๋ ๊ฒ! ๊ทธ๋ฆฌ๊ณ ํ์ ์คํฌ๋ฆฝํธ ํ๋๋ ๋ชจ๋ฅด๋๋ฐ ๊ทธ๋ฅ ๋ํํ ๋ค ์ง๋ผ๊ณ ํ์ผ๋ฉด ์์๋ง์ผ๋ก๋ ๋์ฐํ๋ฐ, ๊ธฐ๋ณธ์ฝ๋๊ฐ ์ฃผ์ด์ง ์ํ์์ ์์ํด์ ์กฐ๊ธ ๋ ์์ํ๋ ๊ฒ ๊ฐ๋ค. ์ด๊ฒ ๋ฌด์จ ๋ง์ธ์ง ํด์ํด์ ๋ณํํ๊ฑฐ๋ ํ์ฅํ๋ฉด ๋๋๊น..!
ํ์๋๋ก ์งฐ๋๋ ์ค๋ฅ๊ฐ ์์ฒญ ๋๋๊ฑธ ๋ณด๋ฉด ํ์ ์คํฌ๋ฆฝํธ๋ก ๊ผผ๊ผผํ๊ฒ ๊ฒ์ฌํ์ ๋ ๋ฌธ์ ๊ฐ ๋๋ ์ฝ๋ฉ ์ต๊ด์ ๊ฐ๊ณ ์์๋ค๋๊ฑฐ๋๊น ์ผ๋ฅธ... ํ์ ์คํฌ๋ฆฝํธ์ ์ ์ํ๋ ์ ๋ฐ์๐
๐์ฐธ๊ณ
'๐๊ณต๋ถ > ํ๋ฆฌ์จ๋ณด๋ฉ์ฝ์ค' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[ํ๋ฆฌ์จ๋ณด๋ฉ์ฝ์ค] 3์ฃผ์ฐจ -๊ณผ์ 5 (0) | 2021.09.06 |
---|---|
[ํ๋ฆฌ์จ๋ณด๋ฉ์ฝ์ค] 5์ฃผ์ฐจ -๊ณผ์ 8 (0) | 2021.08.30 |
[ํ๋ฆฌ์จ๋ณด๋ฉ์ฝ์ค] 4์ฃผ์ฐจ - ๊ณผ์ 6 (0) | 2021.08.18 |
[ํ๋ฆฌ์จ๋ณด๋ฉ์ฝ์ค] 3์ฃผ์ฐจ - ๊ณผ์ 4 (0) | 2021.08.11 |
[ํ๋ฆฌ์จ๋ณด๋ฉ์ฝ์ค] 2์ฃผ์ฐจ -๊ณผ์ 3(2) (0) | 2021.08.08 |
๋๊ธ