📘 이벤트 버블링과 `stopPropagation()` — 구조적 이해와 실전 예시

웹 개발에서 자주 마주치는 개념 중 하나가 이벤트 버블링(Event Bubbling)입니다.클릭 이벤트 하나로 여러 요소가 함께 반응하는 상황, 혹시 경험해보셨나요?이번 글에서는 이벤트 버블링의 개념을 구조적으로 정리하고,회사 보고 체계에 빗대어 직관적인 예시와 함께

2025년 6월 11일
·
0개의 댓글
·

트리 쉐이킹(Tree-Shaking)과 사이드 이펙트(Side Effect) 쉽게 정리하기 😊

트리 쉐이킹은 사용하지 않는 코드를 제거해서 최종 파일을 가볍게 만드는 기술이에요.“나무(tree)를 흔들면 낙엽(leaves)이 떨어지는” 모습처럼, 코드에서도 “안 쓰는 부분만 털어내는” 과정을 생각하면 돼요.ES2015 모듈(import/export) 방식을 기반

2025년 6월 1일
·
0개의 댓글
·

바렐(Barrel) 파일(index.ts) 사용하기 가이드 ✨😊

폴더 내부에 여러 모듈(컴포넌트, 유틸, 타입 등)을 한곳에서 재내보내기(re-export)하는 방법index.ts 파일을 “통(barrel)”처럼 만들어두면, 상위 코드에서 폴더 경로만으로 필요한 모듈을 한 번에 가져올 수 있어요 😉예시 \- 폴더 구조index.

2025년 6월 1일
·
0개의 댓글
·

💡 CSS 100vh vs 100% 제대로 이해하고 쓰기

CSS에서 높이를 설정할 때 가장 자주 쓰는 단위인 100vh와 100%.비슷해 보이지만 둘은 동작 방식이 완전히 다릅니다.이번 글에서는 100vh와 100%의 차이,예제 코드, 실제 동작 방식,그리고 자주 하는 실수와 해결법까지 모두 정리해볼게요!vh는 Viewpor

2025년 5월 30일
·
0개의 댓글
·

📚 HTML5 시맨틱 태그 완전 정복

시맨틱(Semantic)이란 "의미론적인"이라는 뜻이에요.즉, 시맨틱 태그(Semantic Tag)는 "이 태그가 어떤 역할을 하는지 그 이름만 보고도 알 수 있도록 만든 HTML 태그"를 의미해요.과거에는 <div>, <span> 같은 의미 없는 태그만 써

2025년 5월 30일
·
0개의 댓글
·

🎯 React Router에서 Router는 왜 index.tsx에 있어야 할까?

useLocation 훅을 사용하려는데 자꾸 에러가 난다면, Router 위치를 의심해보세요!React 프로젝트에서 다음처럼 AppRouter 내부에서 useLocation()을 사용하면서 Router까지 함께 선언하는 경우:이럴 때 다음과 같은 오류가 발생합니다:❗u

2025년 5월 29일
·
0개의 댓글
·

📘 React.FC란 무엇인가? – TypeScript에서의 사용과 장단점 정리

React와 TypeScript를 함께 사용할 때, 흔히 보게 되는 타입이 하나 있다. 바로 React.FC 또는 React.FunctionComponent이다.이 글에서는 React.FC가 무엇인지, 어떤 역할을 하는지, 실제 현업에서는 어떤 방식을 선호하는지, 그리

2025년 5월 23일
·
0개의 댓글
·

🧠 실시간 통신의 두 가지 방식: Polling vs WebSocket 정리

실시간 기능이 필요한 채팅, 알림, 라이브 데이터 등에선데이터를 실시간으로 주고받는 방식이 매우 중요합니다.대표적으로 사용되는 방식은 두 가지입니다:🕓 Polling (폴링)🔌 WebSocket (웹소켓)이번 글에선 이 두 가지 방식을 비교하고,어떤 상황에서 어떤

2025년 5월 23일
·
0개의 댓글
·

🌈 CSS 파일 vs CSS Module 완벽 정리

프론트엔드 개발을 하다 보면 스타일을 적용할 때 style.css처럼 일반 CSS 파일을 사용하는 경우도 있고,.module.css라는 조금은 생소한 확장자를 마주치는 경우도 있습니다.이 둘은 어떻게 다르고, 언제 무엇을 써야 할까요?CSS(Cascading Style

2025년 5월 21일
·
0개의 댓글
·

🚀 Vite + React 프로젝트를 GCP에 배포하기

Vite는 빠른 개발 환경을 제공하는 프론트엔드 빌드 도구입니다. 이번 글에서는 Vite + React로 제작한 프로젝트를 GCP 환경에 배포하는 과정을 단계별로 정리해보겠습니다. ✅먼저, Vite 프로젝트의 패키지를 설치하고 빌드합니다.위 명령어를 통해 dist 폴더

2025년 5월 15일
·
0개의 댓글
·

TypeScript로 전환 후 Vite + React에서 발생한 모듈 경로 오류, 해결책은 단순히 VSCode 재시작?

Vite + React 환경에서 .jsx 파일을 .tsx로 변경한 후, 모듈에 대한 선언 파일을 찾을 수 없습니다라는 TypeScript 오류를 마주한 적이 있는가? 나도 동일한 문제를 겪었다. tsconfig.json을 열심히 뒤져보고, Vite 설정까지 점검했지만,

2025년 5월 15일
·
0개의 댓글
·

Objects are not valid as a React child (found: [object Date]).

일정을 짜는 기능을 만드는 도중에, 에러가 떴다....정확하게는 react-calendar를 사용하여, 한국 시간대에 맞춘 마크와 타임테이블을 만들려고 하는 도중에 꼬여서 에러가 떴다.이건 Date 타입을 바로 state의 초기 데이터로 설정해서 발생한 오류이다.

2025년 1월 22일
·
0개의 댓글
·

Uncaught runtime Error!

props를 자식 컴포넌트에 넘겨주었을 때, { props } 형태로 자식 컴포넌트에서 사용해야 한다. 이것을 사용하지 않아 에러가 떴다...참고 자료BLOG : https://velog.io/@leemember/Objects-are-not-valid-as-a

2024년 12월 20일
·
0개의 댓글
·

Too many re-renders Error!

Radio onChange로 value (0, 1) 값을 받아서, 배열(2차배열)의 첫번째 인자를 구분하고, 그 배열을 body에서 map으로 button을 생성하는 도중에 위의 에러가 뜨게 되었다.아래의 링크를 읽어본 결과, state의 변화가 무한반복되어서 나타나는

2024년 12월 20일
·
0개의 댓글
·

React Uncaught Error

input tag로 radio를 만들고 있는 중이다.오류가 난 코드...오류 해결input은 하위 콘텐츠를 가질 수 없는 빈 요소이다. 그러므로 </input>이 필요가 없다는 뜻!그래서 예러가 뜬 것이다.참조\_codingEverybody{}

2024년 12월 17일
·
0개의 댓글
·

React Install ENONET Error!

clone 해서 가져온 react 파일을 npm start 할려고 했다가 안되어서, npm install을 시도하다가 또 에러가 떠서 찾아보는 중이다...저장 공간이 없어서 에러가 뜬 것이다...git 로컬 위치 바꿀려면 그냥 .git 파일 있는 곳 내용 전부 다른

2024년 12월 17일
·
0개의 댓글
·
post-thumbnail

(2024.09.06(금)) 슈퍼코딩 부트캠프 4주차 Day4-5 후기

38강. 스타일링 - 4 - tailwindcss ~ 44강. 데이터 정렬프레임워크를 통해서 정해진대로 하다보면, 생산성을 높일 수 있음.다양한 CSS 프레임워크 도구들이 있다.이 외에도 Material UI, Ant Design, Chakra UI 같은 라이브러리도

2024년 9월 6일
·
0개의 댓글
·

아키텍처, 칸반

: 소프트웨어의 골격이 되는 기본 구조이자, 소프트웨어를 구성하는 요소들 간의 관계를 표현하는 시스템의 구조 또는 구조체이다.아키텍처 그림 참조자세한 설명소프트웨어 개발 시 적용되는 원칙과 지침이며, 이해 관계자들의 의사소통 도구로 활용된다.소프트웨어 아키텍처의 설계는

2024년 8월 30일
·
0개의 댓글
·

(2024.08.29(목)) 슈퍼코딩 부트캠프 4주차 Day3 후기

34강. 리스트 렌더링 - 3 - 리스트 필터링 ~ 37강. 스타일링 - 2 - CSS Modules리스트에 상품들을 특정 조건에 따라 필터링 해서 보여주기필터링을 할 때마다 업데이트가 되어야 한다.값이 없으면, 없다는 문구를 나타낸다.직접 요소에 스타일링을 넣어서 만

2024년 8월 29일
·
0개의 댓글
·
post-thumbnail

(2024.08.27(화)) 슈퍼코딩 부트캠프 4주차 Day2 후기

29강, 리액트 상태 - 5 - Form 제출 ~ 33강 리스트 렌더링 - 2 - KEY이 이벤트를 발생하기 위해서는 <button type="submit">이 필요해당 event에서 기본적으로 실행되는 로직을 실행되지 않게 하고 싶은 경우1) a 태그 클릭 시

2024년 8월 27일
·
0개의 댓글
·