header-img
Info :
FRONTEND 70
React :: C#의 Region 같은 κ±Έ.. React μ—μ„œ μ“Έ μˆ˜λŠ” μ—†μ„κΉŒ?
2024.05.07
c# κ°œλ°œμ„ ν•΄λ³Έ μ‚¬λžŒλ“€μ€ λ°©λŒ€ν•΄μ§€λŠ” μ½”λ“œλ₯Ό κΉ”λ”ν•˜κ²Œ μ •λ¦¬ν•΄μ„œ 보기 μœ„ν•΄ Region μ΄λΌλŠ” κΈ°λŠ₯을 μ“΄λ‹€.λ¦¬μ•‘νŠΈμ—μ„œλ„ μ½”λ“œκ°€ κΈΈμ–΄μ§€λ‹ˆ 문단별 μ ‘κΈ° 말고 λ‚΄κ°€ μ§€μ •ν•œ Region 만큼만 μ ‘κ³  펴고λ₯Ό ν•˜κ³  싢은데..React μ—μ„œλŠ” μ–΄λ–€ μ‹μœΌλ‘œ 진행해야 ν• κΉŒ? κ°œλ°œ ν™˜κ²½(intelliJ, vsCode) 에 λ”°λ₯Έ μ‚¬μš© 방법에 λŒ€ν•΄ μ•Œμ•„λ³΄λ„λ‘ ν•˜κ² λ‹€. μš°μ„ ..#region μ΄λž€?λ‚΄κ°€ μ½”λ“œλ₯Ό μ ‘κ³  펴고 싢은 λΆ€λΆ„μ˜ μ˜μ—­μ„ μ§€μ •ν•΄μ£ΌλŠ” 것!#region 을 μ‚¬μš©ν•˜κ²Œ 되면 #endregion 으둜 μ§€μ‹œλ¬Έμ„ μ’…λ£Œ ν•΄μ•Όν•˜λ©°, visual studio μ—μ„œ #regionμ—μ„œ λ°”λ‘œ λ‹€μŒμœΌλ‘œ λ‚˜μ˜€λŠ” #endregionκΉŒμ§€μ˜ μ½”λ“œλ₯Ό ν™•λŒ€, μΆ•μ†Œν•˜λ©° μž‘μ—…μ„ 진행할 수 있게 ν•΄μ€€λ‹€. 1. intelliJμ—μ„œ μ‚¬μš©ν•˜λŠ” 방법  //re..
list_img
React :: React 19 Beta 해석 1
2024.04.30
React 19 Beta – ReactThe library for web and native user interfacesreact.dev μΌλΆ€ 해석 발췌 React 19의 μƒˆλ‘œμš΄ κΈ°λŠ₯Actionλ¦¬μ•‘νŠΈ μ•±μ˜ 일반적인 μ‚¬μš© μ‚¬λ‘€λŠ” 데이터 λ³€ν™”λ₯Ό μˆ˜ν–‰ν•œ λ‹€μŒ μ‘λ‹΅μœΌλ‘œ μƒνƒœλ₯Ό μ—…λ°μ΄νŠΈν•˜λŠ” κ²ƒμž…λ‹ˆλ‹€. 예λ₯Ό λ“€μ–΄, μ‚¬μš©μžκ°€ 이름을 λ³€κ²½ν•˜κΈ° μœ„ν•΄ 양식을 μ œμΆœν•˜λ©΄ API μš”μ²­μ„ ν•œ λ‹€μŒ 응닡을 μ²˜λ¦¬ν•©λ‹ˆλ‹€. κ³Όκ±°μ—λŠ” 보λ₯˜ μƒνƒœ, 였λ₯˜, 낙관적 μ—…λ°μ΄νŠΈ 및 순차적 μš”μ²­μ„ μˆ˜λ™μœΌλ‘œ μ²˜λ¦¬ν•΄μ•Ό ν–ˆμŠ΅λ‹ˆλ‹€. μ˜ˆλ₯Ό λ“€μ–΄ usestateμ—μ„œ 보λ₯˜ 및 였λ₯˜ μƒνƒœλ₯Ό μ²˜λ¦¬ν•  수 μžˆμŠ΅λ‹ˆλ‹€.// Before Actionsfunction UpdateName({}) { const [name, setName] = useState(""); con..
이런 μž¬λ―Έλ‚œ ν”„λ‘œμ νŠΈλ₯Ό 해보고 μ‹Άλ‹€!
2024.03.27
https://techblog.woowahan.com/16158/
μš©μ–΄ :: μΈλ°”μš΄λ“œ(inbound)와 μ•„μ›ƒλ°”μš΄λ“œ(outbound)
2024.01.26
μΈλ°”μš΄λ“œμ™€ μ•„μ›ƒλ°”μš΄λ“œλŠ” νŠΈλž˜ν”½μ΄ λ„€νŠΈμ›Œν¬ 간을 μ΄λ™ν•˜λŠ” λ°©ν–₯을 의미. μΈλ°”μš΄λ“œ - λ„€νŠΈμ›Œν¬μ— λ“€μ–΄μ˜€λŠ” 정보 - 메세지가 ν΄λΌμ΄μ–ΈνŠΈμ—μ„œ μ„œλ²„λ‘œ ν–₯ν•˜λŠ” 것 - ex. μ²¨λΆ€νŒŒμΌμ„ μ„œλ²„μ— μ €μž₯ν•  λ•Œ (upload) μ•„μ›ƒλ°”μš΄λ“œ - λ„€νŠΈμ›Œν¬μ—μ„œ λ‚˜κ°€λŠ” 정보 - ν΄λΌμ΄μ–ΈνŠΈμ˜ μš”μ²­μ„ μ²˜λ¦¬ν•˜κ³  메세지가 μ„œλ²„μ—μ„œ ν΄λΌμ΄μ–ΈνŠΈλ‘œ λ‹€μ‹œ ν–₯ν•˜λŠ” 것 - ex. μ²¨λΆ€νŒŒμΌμ„ λ‹€μš΄λ‘œλ“œ ν•  λ•Œ
list_img
JS :: λ””λ°”μš΄μŠ€(Debounce)와 μŠ€λ‘œν‹€λ§(Throttling)
2024.01.15
예λ₯Ό λ“€μ–΄λ³΄μž. μ–΄λ–€ 값을 μž…λ ₯ν•  λ•Œ ν•΄λ‹Ή 단어가 ν¬ν•¨λœ 단어λ₯Ό μ œκ³΅ν•˜λŠ” κΈ°λŠ₯을 κ΅¬ν˜„ν•˜λŠ” 상황. = 검색엔진 검색어 μΆ”μ²œ κ²°κ³Ό 같은 κΈ°λŠ₯. 이럴 λ•Œ κΈ€μžκ°€ λ³€ν•  λ•Œλ§ˆλ‹€, μ–΄λ–€ function μ΄λ‚˜ APIλ₯Ό ν˜ΈμΆœν•˜μ—¬μ•Ό ν•˜λŠ”λ°.. λ„ˆλ¬΄ μž¦μ€ ν•¨μˆ˜ 호좜이 μΌμ–΄λ‚œλ‹€. λ¬Όλ‘  ν”„λ‘ νŠΈμ—”λ“œμ™€ λ°±μ—”λ“œμ—μ„œ μ„±λŠ₯ μ΅œμ ν™”κ°€ λ˜μ–΄ 있으면 λ¬Έμ œκ°€ 덜 일어날 μˆ˜λ„ μžˆμœΌλ‚˜.. κ·Έλž˜λ„ 만일의 문제λ₯Ό μ œκ±°ν•΄μ£ΌλŠ” 것이 μ€‘μš”ν•  것이닀. μ΄λ•Œ 보톡 λ””λ°”μš΄μŠ€ Debounce 와 μ“°λ‘œν‹€λ§ Throttling 의 κ°œλ…μ„ μ μš©ν•˜κ²Œ λ˜λŠ”λ° 이 λ‘κ°€μ§€μ˜ 곡톡점과 차이점에 λŒ€ν•΄ μ μ–΄λ³΄κ³ μž ν•œλ‹€. 곡톡점 λ””λ°”μš΄μŠ€μ™€ μ“°λ‘œν‹€λ§μ˜ 곡톡점은.. 1. ν•¨μˆ˜κ°€ λ„ˆλ¬΄ 많이 ν˜ΈμΆœλ˜μ§€ μ•Šλ„λ‘ μ œμ–΄ν•˜λŠ” ν…Œν¬λ‹‰μ˜ μ’…λ₯˜μ΄λ©°, 2. μ„±λŠ₯ μ΅œμ ν™”μ™€ λ¦¬μ†ŒμŠ€ 관리에 많이 μ‚¬μš©λ˜λŠ” 개..
Performance :: switch와 else if 비ꡐ 1
2023.12.28
κ°œλ°œν•˜λ‹€λ³΄λ©΄ λΆ„κΈ° 처리λ₯Ό ν•˜λŠ”κ²Œ ν•„μˆ˜μ μ΄μ–΄μ§„λ‹€. μ΄λ•Œ switchλ₯Ό μ‚¬μš©ν•˜λŠ” 게 λ‚˜μ€μ§€ else if 의 μ‚¬μš©μ΄ λ‚˜μ€μ§€ 고민이 될 λ•Œκ°€ μžˆλ‹€. 보톡 μ½”λ“œ μ •λ¦¬λŠ” switchκ°€ ν•œ λˆˆμ— 보기 μ‰¬μš΄ 편이고, 개인적으둜 μ‚¬μš©ν•˜κΈ°μ—λŠ” if~else 문이 μ²˜λ¦¬ν•˜κΈ°κ°€ μ‰¬μš΄ 것 κ°™λ‹€. κ·Έλž˜λ„ μ½”λ“œ κ°€μ‹œμ„± 및 개발자 νŽΈμ˜μ„±μ„ κ³ λ €ν•˜μ§€ μ•Šμ„ μˆ˜λŠ” μ—†μ§€λ§Œ... 제일 μ€‘μš”ν•œ 건 ν”„λ‘œκ·Έλž¨ μ„±λŠ₯이라... 두 κ°€μ§€μ˜ 둜직적인 차이λ₯Ό μ •λ¦¬ν•΄λ³΄κ³ μž ν•œλ‹€. switchλ¬Έ λ³€μˆ˜λ₯Ό 미리 μž…λ ₯ λ°›μ•„ 두고, 미리 정해놓은 κ°’λ“€κ³Ό 일치 μ—¬λΆ€λ₯Ό νŒλ‹¨ν•˜μ—¬ control flowλ₯Ό 처리 if~elseλ¬Έ boolean으둜 κ²°κ³Ό 값이 λ‚˜μ˜€λŠ” 쑰건문의 결과에 따라 true, false 두가지 control flowλ₯Ό 가진닀. κ·ΈλŸ¬λ―€λ‘œ . . . if~e..
Javascript :: μˆ«μžμ— μ²œλ‹¨μœ„λ‘œ 콀마(,) 찍기
2023.12.04
λ¦¬μ•‘νŠΈμ—μ„œ number ν˜•νƒœμ˜ 숫자λ₯Ό νšŒκ³„ λ‹¨μœ„ ν˜•νƒœλ‘œ λ‚˜νƒ€λ‚΄κ³  μ‹Άμ—ˆλ‹€. ex) 1000 일 경우 1,000 둜 λ‚˜νƒ€λ‚΄κ³  555666777 일 경우 555,666,777 λ‚˜νƒ€λƒ„. case λ₯Ό λ‘κ°€μ§€λ‘œ κ΅¬λ³„ν•˜μ—¬ κ°œλ°œν•΄λ³΄μ•˜λ‹€. input 값이 "1000" μΌμˆ˜λ„ 있고 1000 μΌμˆ˜λ„ μžˆμœΌλ‹ˆ.. CASE1. 숫자 νƒ€μž…μ˜ 데이터λ₯Ό κ°€κ³΅ν•˜λŠ” 경우 Number.prototype.format = function () { if (this == 0) return 0; var reg = /(^[+-]?\d+)(\d{3})/; var n = this + ""; while (reg.test(n)) n = n.replace(reg, "$1" + "," + "$2"); return n; }; // test var num = 12..
list_img
React :: ν™˜κ²½μ— λ”°λ₯Έ .env(ν™˜κ²½ λ³€μˆ˜) μ…‹νŒ…ν•˜κΈ°
2023.11.20
React ν”„λ‘œμ νŠΈλ₯Ό κ°œλ°œν•˜λ‹€λ³΄λ©΄, 배포 ν™˜κ²½?에 따라 λ‹€λ₯΄κ²Œ ν™˜κ²½ λ³€μˆ˜λ₯Ό μ…‹νŒ…ν•΄μ•Όν•˜λŠ” caseκ°€ λ°œμƒν•œλ‹€. 예λ₯Ό λ“€λ©΄, 보톡 API μ£Όμ†Œλ₯Ό ν™˜κ²½ λ³€μˆ˜λ‘œ 많이 μ…‹νŒ…ν•΄λ‘κ³ λŠ” ν•˜λŠ”λ°.. 운영 API μ£Όμ†Œμ™€ 개발 API μ£Όμ†Œλ₯Ό 배포 ν™˜κ²½μ— 따라 λ‹€λ₯΄κ²Œ μ…‹νŒ…ν•΄λ‘κ³  싢은 caseκ°€ λ”± 이에 ν•΄λ‹Ήν•œλ‹€. React :: ν™˜κ²½λ³€μˆ˜(.env) μ…‹νŒ…ν•˜κΈ° ν† ν°μ΄λ‚˜ API ν‚€ 같은 것은 ν•˜λ“œμ½”λ”©μœΌλ‘œ 집어 λ„£μœΌλ©΄ 배포 μ‹œ 개발자 도ꡬ에 λͺ¨λ‘ λ“œλŸ¬λ‚˜κΈ° λ•Œλ¬Έμ— μ΅œλŒ€ν•œ μˆ¨κ²¨μ„œ 코딩을 진행해야 ν•œλ‹€. μ΄λ•Œ μ‚¬μš©ν•  수 μžˆλŠ” 방법 쀑 ν•˜λ‚˜κ°€ "ν™˜κ²½λ³€μˆ˜" 이닀. bornatnoon.tistory.com μš°μ„  기초 μ…‹νŒ… 방법을 첨뢀해본닀. (.env νŒŒμΌμ„ ν•˜λ‚˜λ§Œ μ“°λŠ” μΌ€μ΄μŠ€) μΌ€μ΄μŠ€μ— λ”°λ₯Έ .env μ„€μ • 방법 β€» μ°Έκ³ . λ¦¬μ•‘νŠΈ ν”„λ‘œμ νŠΈ 생..
list_img
React :: ν™˜κ²½λ³€μˆ˜(.env) μ…‹νŒ…ν•˜κΈ° 2
2023.11.20
ν† ν°μ΄λ‚˜ API ν‚€ 같은 것은 ν•˜λ“œμ½”λ”©μœΌλ‘œ 집어 λ„£μœΌλ©΄ 배포 μ‹œ 개발자 도ꡬ에 λͺ¨λ‘ λ“œλŸ¬λ‚˜κΈ° λ•Œλ¬Έμ— μ΅œλŒ€ν•œ μˆ¨κ²¨μ„œ 코딩을 진행해야 ν•œλ‹€. μ΄λ•Œ μ‚¬μš©ν•  수 μžˆλŠ” 방법 쀑 ν•˜λ‚˜κ°€ "ν™˜κ²½λ³€μˆ˜" 이닀. κ·ΈλŸΌμ—λ„.. CRA 곡식 λ¬Έμ„œμ—μ„œλŠ” λ‹€μŒκ³Ό 같은 주의 사항을 μ „λ‹¬ν•œλ‹€. WARNING : Do not store any secrets (such as private API keys) in your React App λΉ„κ³΅κ°œ API ν‚€ 같은 값을 μ €μž₯ν•˜λŠ” 것을 μ§€μ–‘ν•˜λŠ” μ΄μœ λŠ” ν™˜κ²½ λ³€μˆ˜κ°€ 'λΉŒλ“œ'에 λ‚΄μž₯λ˜μ–΄ λˆ„κ΅¬λ“ μ§€ 이λ₯Ό 확인할 수 있기 λ•Œλ¬Έ. 1. .env 파일 생성 μ΅œμƒλ‹¨ λ£¨νŠΈμ— .env νŒŒμΌμ„ 생성해주도둝 ν•˜μž. .env νŒŒμΌμ€ κΌ­ ν”„λ‘œμ νŠΈ 파일 μ΅œμƒλ‹¨μ— μžˆμ–΄μ•Ό 함. 2. .gitignore μ„€μ • .env .e..
list_img
React :: 동적 λΌμš°νŒ… (feat. DB 데이터 μ‚¬μš©)
2023.11.07
μ‘μš© ν”„λ‘œκ·Έλž¨μ—μ„œ ν•˜λ˜ "메뉴관리"의 κ°œλ…μ„ 웹에도 λ„μž…ν•˜λŠ” 것이 λͺ©μ μ΄μ—ˆμŒ. μ‚¬μš©μž(κ΄€λ¦¬μž)λŠ” ν”„λ‘œκ·Έλž¨ λ‚΄μ—μ„œ 메뉴와 κ΄€λ ¨λœ 데이터λ₯Ό DB에 insert ν•  수 있고, μ΄λ ‡κ²Œ λ§Œλ“€μ–΄μ§„ Data 둜 λΌμš°νŒ…μ—λ„ 적용되고, 메뉴바에도 μ μš©λ˜λŠ”.. 그런 ν˜•νƒœκ°€ μ΅œμ’…μ΄μ—ˆμŒ. React 생λͺ…μ£ΌκΈ° νŠΉμ„± 상 μ–΄λ ΅λ‹€λŠ” 닡변을 λ°›κΈ°λ§Œ ν•˜λ˜ μ°°λ‚˜.. μ • μ•ˆλ˜λ©΄ 이 λΌμš°νŒ… μ‹œμŠ€ν…œμ„ μ •λ¦¬ν•˜κ±°λ‚˜ μ‰½κ²Œ λ§Œλ“€μ–΄λ³΄μžλŠ” 마음으둜 μ‹œμž‘ν•˜κ²Œ λ˜μ—ˆλ‹€. 첫 아이디어 λŠ” react-router-dom v5 λ¬Έλ²•μœΌλ‘œ κ΅¬ν˜„ν•œ μ•„λž˜μ˜ λͺ¨μŠ΅ 2023.11.03 - [FRONTEND/React] - React :: (Next.js μ‚¬μš© 없이) ν•΄λ‹Ή ν΄λ”μ˜ νŒŒμΌμ„ 동적 λΌμš°νŒ…. μ•„λ¬΄λž˜λ„ κ°€μž₯ μ΅œμ‹  버전을 μ¨μ•Όν•œλ‹€λŠ” 생각도 μžˆμ—ˆκ³ , μ™Έμ£Όμ—…μ²΄μ—μ„œ λ§Œλ“€μ–΄μ€€ ..
React :: (Next.js μ‚¬μš© 없이) ν•΄λ‹Ή ν΄λ”μ˜ νŒŒμΌμ„ 동적 λΌμš°νŒ….
2023.11.03
맀번 μƒμ„±λ˜λŠ” νŒŒμΌμ„ App.js에 μˆ˜μž‘μ—…μœΌλ‘œ λΌμš°νŒ…ν•˜κΈ°μ—λŠ” μ‰¬μš΄ 일이 μ•„λ‹ˆλ‹€. κ·Έλž˜μ„œ.. νŽ˜μ΄μ§€λ‘œ λΌμš°νŒ…λ˜μ–΄μ•Όν•˜λŠ” νŒŒμΌμ„ μž„μ‹œμ˜ ./pages λΌλŠ” 폴더에 λͺ°μ•„ λ„£κ³  ν•΄λ‹Ή 폴더에 μžˆλŠ” νŒŒμΌμ„ μ „λΆ€ ν•˜κ² λ‹€λŠ” 문법을 μž‘μ„±ν•΄λ³΄μ•˜λ‹€. μ•„λ§ˆ 동적 λΌμš°νŒ…μ„ κ²€μƒ‰ν•˜λ©΄ 같은 ν…œν”Œλ¦Ώμ— props 만 λ°”λ€ŒλŠ” (μƒν’ˆ 상세 이미지 ..) ν˜•νƒœκ°€ λ‹€μˆ˜ λ‚˜μ™€ μ›ν•˜λŠ” 정보λ₯Ό μ–»κΈ° νž˜λ“€κ²ƒμ΄λ‹€. Next.js λ₯Ό μ‚¬μš©ν•˜μ—¬ κ°œλ°œν•˜κ²Œ 되면 μš°λ¦¬κ°€ κ΅¬ν˜„ν•˜κ³ μž ν•˜λŠ” κΈ°λŠ₯을 더 μ†μ‰½κ²Œ κ΅¬ν˜„ν•  수 μžˆμœΌλ‚˜ 순수 React (React-create-APP) 기반으둜 App.js λ₯Ό λ™μ μœΌλ‘œ λΌμš°νŒ… ν•˜λ €λ©΄ μ•„λž˜μ™€ 같은 문법 μ‘°μž‘μ΄ ν•„μš”ν•˜λ‹€. Code. 23.11 κΈ°μ€€μœΌλ‘œ μœ„μ˜ μ½”λ“œλ₯Ό ν˜„μž¬ ν”„λ‘œμ νŠΈμ— μ΄μ‹ν•˜λ €κ³  ν•˜λ©΄ μ—λŸ¬ 메세지가 λ°œμƒν•  것이닀. E..
list_img
React :: λ¦¬μ•‘νŠΈ μ„œλ²„ μ»΄ν¬λ„ŒνŠΈ. React Server Component. 2
2023.11.01
μ°Έκ³  κΈ€ 원문 Making Sense of React Server Components This year, the React team unveiled something they've been quietly researching for years: an official way to run React components exclusively on the server. This is a significant paradigm shift, and it's caused a whole lot of confusion in the React communit www.joshwcomeau.com (이번 κΈ€μ˜ 경우 ν•΄λ‹Ή 글에 λ§λΆ™ν˜€ μ„€λͺ…이 λΆ€μ‘±ν•˜λ‹€κ³  λŠκ»΄μ§€λŠ” 것듀은 λ‹€μˆ˜ μ„œμΉ­ν•˜μ—¬ μž‘μ„±ν•˜μ—¬.. μ°Έκ³  글이라고 ν•˜κΈ°μ—λ„ λ¨Έμ“±ν•˜λ‹€.)..