μΌμμ΄λͺ½ - ν¨κ» κ²½νν νλμ μΌμμ μλ‘ λ€λ₯Έ μκ°μΌλ‘ νμνλ μλΉμ€
SOPT 30κΈ° μ컀ν€(무λ°2μΌ ν΄μ»€ν€) 4μ‘°μ λλ€!
react, typescript, CRA
axios, react-router-dom, recoil, styled-components, styled-reset
.
βββ public
βββ src
βββ assets
βββ components
βββ pages
βββ services
β βββ api
β β βββ types
β βββ mock
β βββ remote
βββ stores
βββ styles
λ¨μ£Όμ | μ£Όμ‘μ | μ΅μΈμ |
---|---|---|
μ΄~?λΌλ λ§ κΈμ§(λ) | λΌ μμΉ¨ κ΅λ°₯κ°κ²¨(μμ£Όμ½Έμ½Έμ½Έ) | μ νκ³ (μκ°λ₯) μ λ§μμ(μλκ² μ§..) |
λ¨μ£Όμ | μ£Όμ‘μ | μ΅μΈμ |
---|---|---|
κΈ μμ±λ·°(CommentForm),ν μμ±λ·°(TeamForm),κ·Έλ£Ήμ°Έμ¬λ·°(GroupMain) | κΈ μμ±λ·°(CommentForm), λ§λ£λ·°(Expire),κ²°κ³Όμ μ₯λ·°(ResultIntro) | κ·Έλ£Ήμ°Έμ¬λ·°(GroupMain), κ²°κ³Ό λ·°(Result), λ§λ£λ·°(Expire) |
- μ»΄ν¬λνΈ μ μΈ
μ΅μμλ function, μλ ν¨μλ const!
function Component() {
const handleaaaa = () => {
}
}
- νΈλ€λ¬ ν¨μ
κΈ°λ₯ κΈ°μ€μΌλ‘ μ°λ (modalOpen
λ±),
μ λ§ μ΄ ν¨μκ° νλ μΌμ΄ νΉμ μ΄λ²€νΈ μ μ©μ΄λΌλ©΄ handle[μ΄λ²€νΈλΉνμμ][μ΄λ²€νΈ]
(handleInputChange
λ±)
- μ»΄ν¬λνΈ μ΄λ¦
buttonSearch
searchButton
btnSearch
searchBtn
- style λΆμΈ κ±°
μ€νμΌλ§μ μν΄μ λ§λ μ»΄ν¬λνΈλ styledλ₯Ό λΆμ΄μ
β StyledDiv
StyledTitle
StyledWrapper
StyledImage
- export , import
exportν μΉκ΅¬μ μ΄λ¦ λ°κΏμ μ°μ§ λ§κΈ°!
μ κ·Έλλ λλλ‘ λ³μ/ν¨μ μ΄λ¦μ μμΈνκ² μ°κΈ°
- λ©μΈμ λ¨Έμ§ν λ 무쑰건 λ€κ°μ΄ νκΈ°
- 쑸리면 μμ벨 μΉκΈ°
- 10λΆ μ΄μ κ³ λ―Όνλ κ²½μ°
λμ
μμ²νκΈ°
- git flow κΈ°λ°
- μ΄μλ₯Ό κΈ°λ₯ λ¨μλ‘ νκ³ , κ·Έ μ΄μ λ¨μλ‘ λΈλμΉ νμ κΈ°λ₯ κ°λ° ν mainμ merge
ex. λΈλμΉλͺ
feat/#μ΄μλ²νΈ
λ¨μ£Όμ | μ£Όμ‘μ | μ΅μΈμ |
---|---|---|
νΌλΈλ¦¬μ±(νμ΄μ§: Result),μ΄κΈ°μΈν ,λΌμ°ν°,api μ°κ²° | νΌλΈλ¦¬μ±(νμ΄μ§: CommentForm, Expire, ResultIntro),리λλ―Έ μμ±,λΌμ°ν° | νΌλΈλ¦¬μ±(νμ΄μ§: Result, Expire, GroupMain), mock api μ°κ²° / mock data μμ±, 리λλ―Έ μμ± |