전체 글 102

따꼼 트러블 슈팅 | React 프로젝트의 자녀 정보 조회 오류 해결

이번 글에서는 src/query/useChildQuery.ts 파일에서 발생한 오류와 이를 해결하는 과정을 정리합니다. useChildQuery 훅을 사용해 자녀 정보를 불러오는 중에 발생한 문제와 해결 방법을 단계별로 설명합니다.  오류가 발생했습니다: JSON object requested, multiple (or no) rows returned 1. 문제 원인오류는 다음과 같은 두 가지 주요 원인으로 발생했습니다: 1. "use client"; 지시어가 없어서 클라이언트 컴포넌트가 아닌 useChildQuery에서 오류가 발생함2. single() 메서드를 사용하여 하나의 자녀만 반환하도록 제한했으므로, 다수의 자녀 정보를 가져오는 상황에서 JSON 형식 오류가 발생함 2. 해결 과정1. "use ..

따꼼 트러블 슈팅 | Supabase 이미지 업로드 오류 수정 error 403

프로젝트 진행 중 이미지 업로드 오류가 발생하여 해결 과정을 공유합니다. 1. 문제 상황이미지를 업로드하려고 하면 403 오류가 발생했습니다.RegisterStep1.tsx:49 이미지 업로드 오류: {statusCode: '403', error: 'Unauthorized', message: 'new row violates row-level security policy'}error: "Unauthorized"message: "new row violates row-level security policy"statusCode: "403"}오류 메시지에서 알 수 있듯이 Row Level Security(RLS) 문제로 인해 접근 권한이 제한되고 있었습니다. 2. 원인 분석RLS 정책 문제: Supabase에서는..

따꼼 트러블 슈팅 | 사용자 기본 정보 저장 오류 해결 과정

1. 문제 상황아이의 기본 정보를 Supabase의 child 테이블에 저장하려고 했으나 Unauthorized (401) 오류와 함께 RLS 관련 정책 위반 메시지가 발생했습니다.POST https://rhihezmeunossgtiviip.supabase.co/rest/v1/경로 (Unauthorized)데이터 저장 오류 {code: '42501', details: null, hint: null, message: 'new row violates row-level security policy for table "child"'}code: "42501"details: nullhint: nullmessage: "new row violates row-level security policy for table \"..

따꼼 | 프로젝트 개발 과정

프로젝트 소개는 아래 포스팅에서 확인하실 수 있습니다.https://seheej.tistory.com/91 따꼼 | 헬스케어 및 건강관리 서비스 프로젝트 소개1. 프로젝트 소개프로젝트 "따꼼"은 어린이 필수 예방접종 정보를 제공하고, 체크리스트와 캘린더를 통해 예방접종 진행 상황을 확인할 수 있는 웹 플랫폼을 만드는 프로젝트로, 예방접종 관련seheej.tistory.com 이 포스팅에서는 이번 프로젝트에서 제가 맡은 기능과 계획을 나누어 설명하겠습니다.  1. 사용자가 입력한 아이의 생년월일을 기반으로 이번달 접종 리스트 보여주기접종 데이터 로드: 연령별 접종 스케줄 데이터를 불러와야 함. 사용자로 부터 생년월일을 입력받으면, 현재 날짜와 생년월일을 기준으로 아이가 맞아야 하는 백신 리스트를 필터링해..

오늘의 일기

개발 블로그를 개설한 지도 어느덧 3개월이 지났다. 원래도 일기를 꾸준히 쓰는 편이 아니라, 처음 블로그를 시작할 때 얼마나 오래 지속할 수 있을지 기대가 크지 않았다. 매년 초에 다이어리를 새 마음으로 장만하지만, 다섯 장 이상 써본 적이 없을 정도로 꾸준히 기록하는 게 어려웠다. 그런데 이번 블로그는 지금까지 작성한 기록 중 가장 오랜 시간 지속하고 있어서 스스로 뿌듯한 마음이 든다. 처음에는 ‘뭘 써야 하나’ 싶었지만, 시간이 지나면서 기록의 소중함을 조금씩 느끼고 있다. 개발 블로그를 시작하면서 기록을 통해 어떤 점에서 성장할 수 있을지 궁금하기도 하고 기대가 되었다. 아직 블로그의 틀이 완전히 잡히지 않아 카테고리를 추가하고 수정하기를 반복하고 있지만, 계속 쓰다 보면 내가 원하는 공간이 조금씩..

따꼼 | 헬스케어 및 건강관리 서비스 프로젝트 소개

1. 프로젝트 소개프로젝트 "따꼼"은 어린이 필수 예방접종 정보를 제공하고, 체크리스트와 캘린더를 통해 예방접종 진행 상황을 확인할 수 있는 웹 플랫폼을 만드는 프로젝트로, 예방접종 관련 데이터를 질병 관리청의 API를 통해 제공받아 사용자들에게 편리한 기능을 제공하는 것이 목표입니다. 이 프로젝트는 5명의 프론트엔드 개발자들로 구성되었으며, Next.js와 React를 기반으로 진행됩니다. 2. 주요 기능 및 페이지 구성로그인/회원가입일반 로그인 및 소셜 로그인(구글, 카카오) 기능을 제공합니다.홈페이지페이지 간 이동을 위한 버튼을 제공하며, 주요 페이지는 다음과 같습니다:접종 정보 페이지: 연령별로 필요한 예방접종 정보를 카드 형식으로 보여줍니다.우리 아이 페이지: 아이의 정보를 등록, 수정하고, 예..

집플래닛 | 프로젝트를 마치며

1. 프로젝트 소개집플래닛(Home Planet)은 사용자가 원하는 지역의 주거 환경을 쉽게 확인하고, 다른 사용자의 리뷰를 통해 생활 편의성을 평가할 수 있는 웹 애플리케이션입니다. 이 프로젝트의 목표는 이사나 주거지 선택을 앞둔 사용자들이 주거지에 대한 다양한 정보를 확인하고, 실제 거주자의 솔직한 리뷰를 바탕으로 더 나은 결정을 내릴 수 있도록 돕는 것입니다. 2. 프로젝트 수행 절차 및 방법구분기간활동비고사전 기획10/10 (목)프로젝트 기획, 와이어 프레임 제작, 역할 배분, 컨벤션 설정부동산 매물 API 미 제공으로 인핸 프로젝트 주제 변경(부동산 매물 정보 > 거주 후기 공유)기능 개발10/11 (금)프로젝트 셋업, 기능 중심 구현 시작기능 개발10/12 (토) ~ 10/14(월)기능 중심 ..

집플래닛 트러블 슈팅 | 리뷰 삭제 버튼 로직 처리 문제

문제 상황ReviewsDisplay 컴포넌트에서 리뷰 목록을 보여줄 때 ReviewCard를 사용하지만, 삭제 버튼이 필요하지 않은 상황입니다. 그래서 showActions prop을 사용하여 삭제 및 수정 버튼을 조건부로 숨기도록 했습니다. 하지만 ReviewCard 컴포넌트에서 onDelete 함수는 여전히 필수적으로 전달되도록 되어 있기 때문에, ReviewsDisplay에서 삭제 로직을 구현하지 않은 상태에서 onDelete 함수를 넘겨주지 않으면 오류가 발생하는 상황이었습니다.문제 원인ReviewCard 컴포넌트는 onDelete 함수가 필수로 제공된다고 가정하고 있고, ReviewsDisplay에서 showActions={false}로 설정했음에도 불구하고 onDelete 함수를 전달하지 않으..

집플래닛 트러블 슈팅 | Cannot destructure property 'basename' of'react_WEBPACK_IMPORTED_MODULE_O_useContext(…….)' as it is null.

서론최근 Next.js와 Zustand를 사용하여 팀 프로젝트를 진행하면서 몇 가지 오류에 직면하게 되었습니다. 특히, 컴포넌트 간의 상태 관리와 라우팅 관련 문제로 인해 어려움을 겪었습니다. 이 포스팅에서는 발생한 오류와 그 해결 과정을 공유하려고 합니다. 문제 설명프로젝트에서 다음과 같은 오류가 발생했습니다:이 오류는 CounterStoreContext를 사용하여 상태를 관리하는 과정에서 발생했습니다. 프로젝트의 Sidebar 컴포넌트에서 상태를 사용하고자 했으나, context가 제대로 제공되지 않아 에러가 발생한 것으로 보입니다.원인 분석오류 메시지를 분석해보니, useContext를 사용할 때 CounterStoreContext가 정의되지 않은 상황이었습니다. 이는 주로 context가 올바르게..

집플래닛 트러블 슈팅 | Git 충돌 해결 트러블슈팅: git push 오류 및 rebase 문제 해결

상황 설명React 프로젝트를 진행하던 중, feat/mypage 브랜치에서 코드 변경사항을 원격 저장소에 푸시하려고 했습니다. 아래 명령어를 사용해 커밋 후 푸시를 시도했습니다:git add .git commit -m "add: 마이페이지 수정/삭제 버튼 기능 연결, 메인페이지 수정/삭제 버튼 감춤, 메인페이지 배너 영역 추가, css 수정"git push origin feat/mypage 그러나 푸시 도중 다음과 같은 오류가 발생했습니다:! [rejected] feat/mypage -> feat/mypage (non-fast-forward)error: failed to push some refs to 'https://github.com/jigong2024/home-planet.git'hi..