Skip to content

200516bb/react-todo-subject

ย 
ย 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

23 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๋ฆฌ์•กํŠธ ์Šคํ„ฐ๋”” Todo ํ”„๋กœ์ ํŠธ

Start


์ œ๊ณต ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ

  • dayjs
  • react
  • react-dom
  • react-scripts
  • uuid

ํ”„๋กœ์ ํŠธ ์„ธํŒ…

๊ธฐ๋ณธ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์„ค์น˜

npm install

๊ฐœ๋ฐœํ™˜๊ฒฝ ์‹œ์ž‘

npm start

Summary


Todo ํƒ€์ž…

๊ตฌํ˜„ํ•ด์•ผ ํ•  Todo์˜ ํƒ€์ž… ํ˜•ํƒœ๋Š” ์•„๋ž˜์™€ ๊ฐ™์Šต๋‹ˆ๋‹ค.

//todo interface
interface Todo {
  id: string;
  text: string;
  completed: boolean;
  createdAt: string;
}

์š”๊ตฌ ์‚ฌํ•ญ

  1. todolist์— ์ƒˆ๋กœ์šด todo๋ฅผ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
    • todo๋ฅผ ์ถ”๊ฐ€ํ•  ๋•Œ ์ถ”๊ฐ€ํ•œ ์‹œ์ ๋„ ๊ฐ™์ด ์ €์žฅํ•ด์„œ ui์— ๋„์›Œ์•ผ ํ•ฉ๋‹ˆ๋‹ค. (dayjs ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์ฐธ๊ณ )
    • todo๋ฅผ ์ถ”๊ฐ€ํ•  ๋•Œ id๋Š” uuid๋ฅผ ์‚ฌ์šฉํ•ด์„œ ๋‚œ์ˆ˜ id๋ฅผ ์ €์žฅํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. (uuid ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์ฐธ๊ณ )
  2. todoํ•ญ๋ชฉ์„ ํด๋ฆญํ•˜๋ฉด ์™„๋ฃŒ์ƒํƒœ๋ฅผ ๋ฐ”๊ฟ€ ์ˆ˜ ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
  3. filter๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•ด์„œ ๋ชจ๋“  todo, ์ง„ํ–‰์ค‘์ธ todo, ์™„๋ฃŒ๋œ todo๋ฅผ ๋ณผ ์ˆ˜ ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
  4. localStorage์— ์ถ”๊ฐ€๋˜๊ฑฐ๋‚˜ ์ˆ˜์ •๋œ todolist๋ฅผ ์ €์žฅํ•˜์—ฌ ์ƒˆ๋กœ๊ณ ์นจํ•˜๊ฑฐ๋‚˜ ์žฌ์ ‘์† ํ•ด๋„ ์‚ฌ์šฉ์ž๊ฐ€ ๊ธฐ๋ก๋œ list๋ฅผ ๋ณผ ์ˆ˜ ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
  5. input type color๋ฅผ ํ™œ์šฉํ•ด์„œ background์˜ ๋ฐฐ๊ฒฝ์„ ์ˆ˜์ •ํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐ๋Šฅ์„ ์ถ”๊ฐ€ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. (ํ•ด๋‹น ๊ธฐ๋Šฅ์€ todo์™€ ์—ฐ๊ด€๋œ๊ฑด ์•„๋‹ˆ์ง€๋งŒ ๋‚˜์ค‘์— ์ง„ํ–‰ํ•˜๊ฒŒ ๋  ๋ Œ๋”๋ง ์ตœ์ ํ™”๋ฅผ ์œ„ํ•ด ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค.)

์„ ํƒ ์š”๊ตฌ ์‚ฌํ•ญ

  1. todo ์‚ญ์ œ ๊ธฐ๋Šฅ ์ถ”๊ฐ€.
  2. ๋ฐฐ๊ฒฝ color๋ฅผ ์ˆ˜์ •ํ•  ๋•Œ ํ•ด๋‹น color๋„ localStorage์— ์ €์žฅํ•ด์„œ ์ƒˆ๋กœ๊ณ ์นจํ•  ๋•Œ ๋ณด์—ฌ์ฃผ๊ธฐ.
  3. 2๋ฒˆ ์š”๊ตฌ์‚ฌํ•ญ์— throttle ํ˜น์€ debounce ๊ธฐ๋Šฅ์„ ์ ์šฉํ•ด์„œ color๋ฅผ ์ˆ˜์ •ํ•  ๋•Œ๋งˆ๋‹ค localStorage์— ์ €์žฅํ•˜๋Š” ๊ณผ์ •์„ ์ตœ์†Œํ™”ํ•˜๊ธฐ.
  4. ์„ ํƒํ•œ filter๋„ localStorage์— ์ €์žฅํ•ด์„œ ์ƒˆ๋กœ๊ณ ์นจํ•  ๋•Œ ํ•ด๋‹น filter๋กœ ๋ณด์—ฌ์ฃผ๊ธฐ.

๊ณผ์ œ ์ˆ˜ํ–‰๋ฐฉ์‹

  1. master๋ฅผ ์ž์‹ ์˜ ์ €์žฅ์†Œ๋กœ forkํ•ฉ๋‹ˆ๋‹ค.
  2. forkํ•œ ์ €์žฅ์†Œ๋กœ ๊ฐ€์„œ ํ•ด๋‹น ์ €์žฅ์†Œ๋ฅผ url์„ ๋ณต์‚ฌํ•œ ํ›„ ์ž์‹ ์˜ ํด๋”์— cloneํ•ฉ๋‹ˆ๋‹ค.
  3. ์ƒ์„ฑ๋œ ํด๋”์—์„œ ์œ„์˜ ํ”„๋กœ์ ํŠธ ์„ธํŒ…์„ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค.
  4. ๊ฐœ๋ฐœ์ด ์™„๋ฃŒ๋œ ํ”„๋กœ์ ํŠธ๋ฅผ forkํ•œ ์ž์‹ ์˜ ์ €์žฅ์†Œ์— push ํ•ฉ๋‹ˆ๋‹ค. (commit์€ ํ”„๋กœ์ ํŠธ๊ฐ€ ๋๋‚˜๊ณ  ํ•œ๋ฒˆ์— ํ•˜๊ธฐ๋ณด๋‹ค๋Š” ๊ธฐ๋Šฅ์„ ์ˆ˜์ •, ๊ตฌํ˜„ํ•  ๋•Œ๋งˆ๋‹ค ์ž‘์€ ๋‹จ์œ„๋กœ ์ชผ๊ฐœ์„œ ์ง€์†์ ์œผ๋กœ commit ํ•ด์ฃผ์‹œ๊ธธ ๊ถŒ์žฅ ๋“œ๋ฆฝ๋‹ˆ๋‹ค.)
  5. pushํ•œ ์ €์žฅ์†Œ์—์„œ pull request๋ฅผ ์ œ ์ €์žฅ์†Œ์˜ branch๋กœ ์š”์ฒญํ•ฉ๋‹ˆ๋‹ค. (branch ์ด๋ฆ„์€ ๊ฐ์ž ์ด๋ฆ„์˜ ์„ฑ์œผ๋กœ ํ•˜๋‚˜์”ฉ ๋งŒ๋“ค์—ˆ์œผ๋‹ˆ ๊ฑฐ๊ธฐ๋กœ pull request ๋ถ€ํƒ๋“œ๋ฆฝ๋‹ˆ๋‹ค!)

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 92.4%
  • HTML 3.9%
  • CSS 3.7%