Skip to content

Conversation

@KingNono1030
Copy link
Contributor

@KingNono1030 KingNono1030 commented Mar 5, 2025

📌 PR 템플릿

🏷️ PR 타입 (PR Type)

아래 해당 사항에 체크해 주세요.

  • 🐛 버그 수정 (Bugfix)
  • ✨ 기능 개발 (Feature)
  • 🎨 코드 스타일 변경 (Code style update) - 포매팅, 로컬 변수 등
  • ♻️ 리팩토링 (Refactoring) - 기능 변화 없음, API 변경 없음
  • 🛠️ 빌드 관련 변경 (Build related changes)
  • 📝 문서 내용 변경 (Documentation)
  • 🔄 기타 (Other) - 설명 작성

📝 요약 (Summary)

PR의 목적과 간단한 설명을 적어주세요.


🔍 상세 내용 (Describe your changes)

변경 사항을 구체적으로 작성해 주세요.

  • 주요 변경점 예시: "버튼 스타일 변경" 등

🔗 관련 이슈 또는 링크 (Issue Number or Link)

이슈 번호나 관련 링크가 있다면 추가해 주세요.


✅ 체크리스트 (Checklist)

PR 작성 시 아래 사항들을 점검해 주세요.

  • 빌드가 성공적으로 되었나요?
  • 코드에 주석을 추가했나요?
  • 모든 테스트가 통과했나요?
  • 관련 문서가 업데이트되었나요?

📸 스크린샷 (선택 사항)

변경 사항이 UI와 관련이 있다면 스크린샷을 추가해 주세요.

2025-03-05.23.56.07.mov
2025-03-05.23.57.00.mov

📝 기타 사항

PR과 관련된 기타 사항이 있다면 적어주세요.

Summary by CodeRabbit

  • 새로운 기능

    • 커뮤니티 게시글 생성, 수정 및 상세조회 페이지가 업데이트되어 실시간 데이터 제공과 풍부한 텍스트 편집 기능을 지원합니다.
    • 폼 검증 및 오류 메시지가 강화되어 사용자 입력에 대한 피드백이 개선되었습니다.
  • 리팩토링

    • 커뮤니티 목록 페이지의 검색, 필터링 및 페이징 로직이 개선되어 원활한 탐색 경험을 제공합니다.
    • 팀 관련 페이지에서 내비게이션 및 콘텐츠 초기값 설정이 조정되어 인터페이스가 한층 향상되었습니다.

@KingNono1030 KingNono1030 self-assigned this Mar 5, 2025
@coderabbitai
Copy link

coderabbitai bot commented Mar 5, 2025

Walkthrough

이번 변경 사항은 커뮤니티와 팀 관련 페이지, 훅, 서비스, 타입, 그리고 상태 관리 리듀서의 업데이트 및 신규 추가를 포함합니다.
커뮤니티 편집, 상세, 생성, 리스트 페이지가 비동기 데이터 처리, 폼 검증(Zod) 및 댓글/편집/삭제 등의 기능 개선으로 리팩토링되었습니다.
팀 페이지에서는 불필요한 console 로그 제거와 초기 값 업데이트, 버튼 클릭 시 페이지 이동 로직 개선이 이루어졌습니다.
또한, 커뮤니티 관련 데이터 처리를 위한 쿼리, 서비스 함수와 상태 관리 리듀서가 추가되었습니다.

Changes

File(s) Change Summary
src/app/(pages)/community/[id]/edit/page.tsx 신규 UpdateCommunityPage 컴포넌트 추가: useParams로 URL에서 커뮤니티 ID 추출, useCommunity로 데이터 로딩, react-hook-form과 Zod 스키마를 이용해 폼 검증, TipTapEditor로 리치 텍스트 편집, useUpdateCommunity를 통한 업데이트 처리
src/app/(pages)/community/[id]/page.tsx CommunityDetailPage 수정: 더미 데이터 제거, useCommunity 사용하여 데이터 비동기 로딩, 로딩/에러 상태 처리, 댓글 관련 컴포넌트(Comment, CommentList) 추가, 수정 및 삭제 버튼 로직 변경 (모달 및 useDeleteCommunity 활용)
src/app/(pages)/community/new/page.tsx 커뮤니티 생성 페이지 업데이트: Zod를 이용한 검증 스키마 추가, zodResolver 도입, useFormonSubmit 함수 수정 및 에러 핸들링 개선, 불필요한 watch 제거
src/app/(pages)/community/page.tsx 커뮤니티 리스트 페이지 리팩토링: 기존 useState에서 useReducer로 전환, 동적 데이터(useCommunityRecruitmentList, useCommunityTop5) 기반 렌더링, 검색/필터/정렬 및 페이지네이션(아이템 수 10→5) 처리 방식 변경
src/app/(pages)/team/[id]/edit/page.tsx, src/app/(pages)/team/new/page.tsx, src/app/(pages)/team/page.tsx 팀 페이지 업데이트: 팀 편집 페이지에서는 console 로그 제거 및 ControllerdefaultValue를 팀 내용 변수로 변경, 팀 생성 페이지에서 console 로그 제거, 팀 리스트 페이지에서는 useStateGrid 제거, 버튼 클릭 시 goToPage(1) 호출 추가
src/queries/community/index.ts, src/services/community/index.ts 신규 커뮤니티 쿼리 및 서비스 함수 파일 추가: 커뮤니티 조회, 생성, 업데이트, 삭제, 상위 5개 커뮤니티 조회 관련 React Query 훅과 API 서비스 함수 제공
src/stores/community/communityListFilterReducer.ts, src/types/api/Community.types.d.ts, src/types/api/Post.types.d.ts 상태 관리 및 타입: 커뮤니티 리스트 필터 리듀서 추가 (검색어, 정렬, 카테고리 상태 관리), Order 타입과 GetCommunityListQuery 등 커뮤니티 관련 타입 확장, Post 타입 파일의 공백 정리 (형식 변경에 불과)

Sequence Diagram(s)

sequenceDiagram
  participant U as 사용자
  participant P as UpdateCommunityPage
  participant H as useCommunity (훅)
  participant M as useUpdateCommunity (훅)
  participant S as updateCommunity (서비스)

  U->>P: URL에 포함된 커뮤니티 ID로 편집 페이지 오픈
  P->>P: useParams로 커뮤니티 ID 추출
  P->>H: 커뮤니티 상세 정보 요청
  H-->>P: 커뮤니티 상세 정보 반환
  U->>P: 폼 작성 후 제출
  P->>M: onSubmit에서 mutate(formData) 호출
  M->>S: API 요청 (커뮤니티 업데이트)
  S-->>M: 업데이트 응답 반환
  M-->>P: 상태 갱신 및 데이터 새로고침
Loading

Possibly related PRs

Suggested reviewers

  • yongb2n

Poem

코드를 다듬고, 기능을 새로워지네,
깔끔한 리듀서와 스키마가 춤을 추네.
팀과 커뮤니티가 힘찬 새 출발,
훅과 서비스가 길을 밝혀주네.
우리 코딩 팀, 빛나는 별처럼 ✨
항상 성장하는 모습, 박수를 보내네!

✨ Finishing Touches
  • 📝 Generate Docstrings

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share
🪧 Tips

Chat

There are 3 ways to chat with CodeRabbit:

  • Review comments: Directly reply to a review comment made by CodeRabbit. Example:
    • I pushed a fix in commit <commit_id>, please review it.
    • Generate unit testing code for this file.
    • Open a follow-up GitHub issue for this discussion.
  • Files and specific lines of code (under the "Files changed" tab): Tag @coderabbitai in a new review comment at the desired location with your query. Examples:
    • @coderabbitai generate unit testing code for this file.
    • @coderabbitai modularize this function.
  • PR comments: Tag @coderabbitai in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples:
    • @coderabbitai gather interesting stats about this repository and render them as a table. Additionally, render a pie chart showing the language distribution in the codebase.
    • @coderabbitai read src/utils.ts and generate unit testing code.
    • @coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.
    • @coderabbitai help me debug CodeRabbit configuration file.

Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments.

CodeRabbit Commands (Invoked using PR comments)

  • @coderabbitai pause to pause the reviews on a PR.
  • @coderabbitai resume to resume the paused reviews.
  • @coderabbitai review to trigger an incremental review. This is useful when automatic reviews are disabled for the repository.
  • @coderabbitai full review to do a full review from scratch and review all the files again.
  • @coderabbitai summary to regenerate the summary of the PR.
  • @coderabbitai generate docstrings to generate docstrings for this PR.
  • @coderabbitai resolve resolve all the CodeRabbit review comments.
  • @coderabbitai configuration to show the current CodeRabbit configuration for the repository.
  • @coderabbitai help to get help.

Other keywords and placeholders

  • Add @coderabbitai ignore anywhere in the PR description to prevent this PR from being reviewed.
  • Add @coderabbitai summary to generate the high-level summary at a specific location in the PR description.
  • Add @coderabbitai anywhere in the PR title to generate the title automatically.

CodeRabbit Configuration File (.coderabbit.yaml)

  • You can programmatically configure CodeRabbit by adding a .coderabbit.yaml file to the root of your repository.
  • Please see the configuration documentation for more information.
  • If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: # yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json

Documentation and Community

  • Visit our Documentation for detailed information on how to use CodeRabbit.
  • Join our Discord Community to get help, request features, and share feedback.
  • Follow us on X/Twitter for updates and announcements.

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 3

🧹 Nitpick comments (9)
src/app/(pages)/community/[id]/edit/page.tsx (2)

25-28: 사용하지 않는 import 제거해보세요!
useCreateCommunity는 여기서 사용되지 않는 것으로 보입니다. 필요하지 않다면 제거하여 가독성과 유지보수성을 높이면 좋겠습니다.

 import {
   useCommunity,
-  useCreateCommunity,
   useUpdateCommunity,
 } from '@/queries/community'

73-75: 로딩 및 에러 처리 UI를 개선하면 어떨까요?
단순히 'd' 문자열만 보여주는 것보다는 로딩 시 스피너나 안내 문구, 에러 시 사용자에게 명확한 오류 메시지를 제공하는 방식을 추천합니다.

src/app/(pages)/community/page.tsx (1)

67-68: 더 나은 로딩/에러 UI로 사용자 경험을 높여보세요.
현재 단순히 <div>d</div>로 표시하고 있는데, 간단한 안내 문구나 스피너를 추가해주시면 사용자 입장에서 더 친절하게 느껴질 것입니다.

src/queries/community/index.ts (3)

44-57: 기본 쿼리 옵션에 대한 설정을 검토해 보세요.
현재 useQuery에서 staleTime이나 cacheTime 등의 옵션을 지정하지 않았습니다. 특정 화면에서 재방문 시 캐싱된 데이터를 재활용하거나 적절히 무효화하려면, 쿼리 옵션을 구체적으로 설정하면 좋습니다.


87-100: 에러 상황 처리 로직 구현을 권장합니다.
useCreateCommunity에서는 onError 콜백이 없어, 에러 발생 시 사용자에게 알림이 부족할 수 있습니다. 알림(Toast)이나 UI 메시지를 통해 적절히 대응하도록 개선하는 것이 좋습니다.


122-136: 에러 처리 시 사용자 안내를 보강할 수 있습니다.
현재 useDeleteCommunity에서 onErrorconsole.error에 기록하기만 합니다. UI에 안내 메시지를 주거나 재시도 혹은 취소 선택지를 제시하면, 사용자 만족도가 높아질 것입니다.

src/app/(pages)/community/[id]/page.tsx (2)

45-46: 에러 및 로딩 상태를 좀 더 상세히 처리해 주세요.
현재 isLoadingisError 상황에서 <div>d</div>만 반환하고 있습니다. 사용자 입장에서 분명한 안내가 되도록 로딩 스피너나 에러 메시지 등을 보여주는 편이 좋겠습니다.


131-157: 삭제 버튼의 후속 처리에도 사용자 피드백을 고려해 보세요.
모달에서 삭제가 확인되면 deleteCommunity를 호출하지만, 에러나 요청 지연이 발생할 수도 있습니다. 추가적인 로딩 상태나 에러 안내 UI를 제공하면 더 나은 UX를 구현할 수 있습니다.

src/services/community/index.ts (1)

1-86: API 경로와 반복되는 로직에 대한 개선을 고려해 보세요.
각 엔드포인트에 "v1/community" 같은 경로가 반복적으로 등장합니다. 추후 관리가 쉽도록 상수화하거나 전역 설정(예: .env 또는 공용 config 파일)으로 분리해 유지보수성을 높일 수 있습니다.

📜 Review details

Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 55bbd20 and e5f0faa.

📒 Files selected for processing (12)
  • src/app/(pages)/community/[id]/edit/page.tsx (1 hunks)
  • src/app/(pages)/community/[id]/page.tsx (4 hunks)
  • src/app/(pages)/community/new/page.tsx (4 hunks)
  • src/app/(pages)/community/page.tsx (6 hunks)
  • src/app/(pages)/team/[id]/edit/page.tsx (1 hunks)
  • src/app/(pages)/team/new/page.tsx (0 hunks)
  • src/app/(pages)/team/page.tsx (4 hunks)
  • src/queries/community/index.ts (1 hunks)
  • src/services/community/index.ts (1 hunks)
  • src/stores/community/communityListFilterReducer.ts (1 hunks)
  • src/types/api/Community.types.d.ts (2 hunks)
  • src/types/api/Post.types.d.ts (1 hunks)
💤 Files with no reviewable changes (1)
  • src/app/(pages)/team/new/page.tsx
✅ Files skipped from review due to trivial changes (1)
  • src/types/api/Post.types.d.ts
🔇 Additional comments (21)
src/app/(pages)/team/page.tsx (4)

5-5: 불필요한 import 제거로 코드가 더 깔끔해졌네요! 👍

필요없는 useStateGrid 컴포넌트 import를 제거하셨군요. 코드 정리가 잘 되었습니다.

Also applies to: 14-14


77-80: 사용자 경험을 향상시키는 훌륭한 개선입니다!

팀 타입 변경 시 goToPage(1)을 호출하여 첫 페이지로 이동하도록 한 로직은 매우 합리적입니다. 사용자가 필터를 변경할 때 페이지를 리셋하는 것은 일관된 사용자 경험을 제공하는 좋은 패턴입니다.


91-94: 일관된 패턴 적용 👍

팀 프로젝트 버튼에도 같은 패턴을 적용하셨네요. 일관성 있는 코드 스타일로 유지보수가 더 쉬워집니다.


105-108: 멘토링 버튼도 동일한 패턴으로 잘 구현하셨습니다!

모든 팀 타입 버튼에 동일한 패턴을 적용하여 코드의 일관성을 유지하셨네요. 이렇게 하면 다른 개발자들도 코드를 쉽게 이해할 수 있습니다.

src/types/api/Community.types.d.ts (2)

10-10: 명확한 타입 정의로 코드 품질 향상!

Order 타입을 명시적으로 정의함으로써 정렬 옵션을 명확히 했습니다. 이는 타입스크립트의 장점을 잘 활용한 예시입니다. 'recent', 'likes', 'views'와 같은 문자열 리터럴 타입을 사용하여 가능한 값을 제한한 것이 좋습니다.


30-34: API 쿼리 파라미터의 체계적인 타입 정의 👏

GetCommunityListQuery 타입을 통해 API 요청에 필요한 파라미터 구조를 명확히 정의했습니다. 이런 방식은 프론트엔드와 백엔드 간의 계약을 명확히 하고, 타입 안정성을 높여 개발 과정에서 발생할 수 있는 오류를 줄여줍니다.

특히 category에 빈 문자열을 허용한 부분은 "모든 카테고리" 옵션을 위한 실용적인 접근법입니다.

src/app/(pages)/team/[id]/edit/page.tsx (2)

194-194: 폼 초기값 설정 개선으로 사용자 경험 향상!

Controller 컴포넌트의 defaultValue를 빈 문자열에서 teamContent로 변경한 것은 매우 중요한 개선입니다. 이제 사용자가 팀 정보를 편집할 때 기존 내용이 에디터에 올바르게 표시될 것입니다.

이전에는 폼이 렌더링될 때 에디터가 빈 상태로 시작했을 가능성이 있었습니다. 이 변경으로 사용자 경험이 크게 향상됩니다.


98-101: 콘솔 로그 제거로 코드 품질 향상!

onSubmit 함수에서 불필요한 console.log를 제거하셨네요. 프로덕션 코드에서 디버깅용 콘솔 로그를 제거하는 것은 코드 품질을 높이는 좋은 습관입니다.

src/stores/community/communityListFilterReducer.ts (3)

1-4: 타입 재사용으로 일관성 유지 👍

GetCommunityListQuery 타입을 재사용하여 FilterState를 정의한 것은 좋은 접근법입니다. 이렇게 하면 API 요청과 상태 관리 간의 일관성을 유지할 수 있습니다.


5-10: 액션 타입 정의가 명확해요!

필터 관련 액션들을 명확하게 정의했습니다. 각 액션 타입과 페이로드의 관계가 잘 구성되어 있습니다.


11-15: 초기 상태 설정이 적절합니다

기본값으로 검색어는 빈 문자열, 정렬은 '최신순', 카테고리는 빈 문자열로 설정한 것은 대부분의 사용자 경험에 맞는 합리적인 선택입니다.

src/app/(pages)/community/[id]/edit/page.tsx (1)

39-49: 커뮤니티 정보 Fetch 로직이 인상적입니다!
useCommunity를 통해 communityId를 받아오는 흐름이 명확하고 유지보수하기도 편해 보입니다. 좋은 시도입니다.

src/app/(pages)/community/page.tsx (2)

120-142: 검색 폼 로직이 깔끔합니다!
dispatch로 검색어를 반영해주는 구조가 명확하고, 코드 가독성도 좋습니다. 훌륭한 아이디어예요!


259-265: 커뮤니티 목록 동적 렌더링, 아주 잘하셨어요!
communityList.map(...)을 통해 각 아이템을 NextLink로 감싸는 방식이 직관적이며, 재사용성을 높였습니다. 응원합니다!

src/app/(pages)/community/new/page.tsx (3)

21-28: Zod 스키마를 활용한 폼 검증이 훌륭합니다!
간결하면서도 필요한 필드를 꼼꼼히 검증하고 있어, 프로젝트의 안정성에 큰 도움이 될 것 같습니다.


35-35: zodResolver 적용이 잘 되었습니다.
React Hook Form과 Zod를 결합해 폼 오류를 바로잡는 로직이 매끄럽습니다. 신규 기능 추가 시에도 확장하기 편해 보이네요.


106-118: 에디터의 에러 처리 표시가 인상적입니다!
fieldState.error를 활용해 사용자에게 바로 피드백을 주는 구조가 좋습니다. 폼의 유효성을 강화하는 코딩 센스가 돋보이네요.

src/queries/community/index.ts (2)

59-72: 초기 데이터 사용 시 주의가 필요합니다.
initialData 옵션으로 이미 캐싱된 정보를 우선 표시하는 것은 사용자 경험 향상에 좋지만, 혹시 오래된 데이터가 표시될 가능성도 있으니 enabledrefetchOnWindowFocus 등의 옵션을 조정해 최신 정보를 보장하도록 해주세요.


174-182: 인기 커뮤니티 조회 로직이 간결합니다.
useCommunityTop5 훅은 최소한의 로직으로 작성되어 있어 가독성이 좋습니다. 불필요한 복잡도가 없으니 현재 구현 그대로 두셔도 무난해 보입니다.

src/app/(pages)/community/[id]/page.tsx (2)

40-46: 게시물 소유 여부 판별 로직을 실제 인증 결과값으로 대체해 주세요.
communityId % 2isOwnPost를 결정하는 것은 임시 구현으로 보입니다. 추후 실제 인증 정보(예: 로그인 사용자 ID)와 게시물 작성자를 비교하여 소유 여부를 판단하도록 개선해주세요.


162-180: 댓글 UI가 잘 구성되었습니다.
CommentCommentList 컴포넌트를 통해 댓글 기능을 분리하고 있어 유지보수가 용이합니다. 다만 추후 실제 API 연동 시에는 상태 관리와 페이징(무한 스크롤 등)을 고려하면 더욱 유연해질 것입니다.

Comment on lines +17 to +31
export const communityListFilterReducer = (
state: FilterState,
action: FilterAction
): FilterState => {
switch (action.type) {
case 'SET_SEARCH_TERM':
return { ...state, searchTerm: action.payload }
case 'SET_SORT_BY':
return { ...state, sortBy: action.payload }
case 'SET_CATEGORY':
return { ...state, category: action.payload }
default:
return state
}
}
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🛠️ Refactor suggestion

'RESET_FILTERS' 액션 처리가 누락되었습니다

리듀서 함수 구현이 깔끔하지만, FilterAction 타입에 정의된 'RESET_FILTERS' 액션을 처리하는 case가 없습니다. 필터 초기화 기능이 필요하다면 이 부분을 추가해야 합니다.

다음과 같이 'RESET_FILTERS' 케이스를 추가하는 것을 제안합니다:

  switch (action.type) {
    case 'SET_SEARCH_TERM':
      return { ...state, searchTerm: action.payload }
    case 'SET_SORT_BY':
      return { ...state, sortBy: action.payload }
    case 'SET_CATEGORY':
      return { ...state, category: action.payload }
+   case 'RESET_FILTERS':
+     return communityListFilterInitialState
    default:
      return state
  }
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
export const communityListFilterReducer = (
state: FilterState,
action: FilterAction
): FilterState => {
switch (action.type) {
case 'SET_SEARCH_TERM':
return { ...state, searchTerm: action.payload }
case 'SET_SORT_BY':
return { ...state, sortBy: action.payload }
case 'SET_CATEGORY':
return { ...state, category: action.payload }
default:
return state
}
}
export const communityListFilterReducer = (
state: FilterState,
action: FilterAction
): FilterState => {
switch (action.type) {
case 'SET_SEARCH_TERM':
return { ...state, searchTerm: action.payload }
case 'SET_SORT_BY':
return { ...state, sortBy: action.payload }
case 'SET_CATEGORY':
return { ...state, category: action.payload }
case 'RESET_FILTERS':
return communityListFilterInitialState
default:
return state
}
}

Comment on lines +30 to +37
const createCommunitySchema = z.object({
communityTitle: z.string().nonempty('제목을 입력해주세요.'),
communityContent: z.string().nonempty('내용을 입력해주세요.'),
communityCategory: z.enum(['SKILL', 'CAREER', 'OTHER'], {
errorMap: () => ({ message: '질문 유형을 선택해주세요.' }),
}),
isComment: z.boolean().optional(),
})
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🛠️ Refactor suggestion

스키마 명칭을 좀 더 직관적으로 정리해보세요.
현재 createCommunitySchema를 업데이트 페이지에서도 사용하는데, 혼동을 줄이기 위해 commonCommunitySchema 혹은 updateCommunitySchema 같은 이름을 고려해보세요.

Comment on lines +102 to +120
// 팀 모집글 수정
export const useUpdateCommunity = (
communityId: Id
): UseMutationResult<
ApiResponse<UpdateCommunityResponse>,
Error,
UpdateCommunityRequest
> => {
const router = useRouter()
const queryClient = useQueryClient()
return useMutation({
mutationFn: data => updateCommunity(communityId, data),
onSuccess: ({ result }) => {
queryClient.invalidateQueries({ queryKey: ['community', communityId] })

router.push(`/community/${result.id}`)
},
})
}
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🛠️ Refactor suggestion

에러 핸들링과 로깅을 보강해 주세요.
useUpdateCommunity에서도 성공 시 로직만 존재하고, 에러 발생 시 대처가 이루어지지 않습니다. 에러를 캡처하거나 안내를 위한 onError 처리 로직을 추가하면 유지보수와 사용자 경험 양쪽에 도움이 됩니다.

Copy link
Contributor

@yongb2n yongb2n left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

고생하셨습니다 ㅎㅎㅎ

@KingNono1030 KingNono1030 merged commit 2ce91f4 into dev Mar 9, 2025
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants