메가진화 폼 버전 정보 버그 수정
· 약 2분
작업 개요
브랜치: feature/1.30.0-fix-mega-version-info
작업 유형: 버그 수정
작업 기간: 2026-01-21
담당: Claude Code
작업 목표
메가진화 포켓몬 상세 페이지에서 습득 기술 정보의 버전 정보가 표시되지 않는 버그 수정
문제 상황
- 메가진화 포켓몬(예: 메가리자몽X, 메가리자몽Y 등) 상세 페이지에서 습득 기술의 버전 정보가 나오지 않음
- 원인: 메가진화 페이지에서
versionGroup데이터를 조회하지 않고undefined로 전달 Detail.context.tsx의getVersionInfo()함수에서versionGroup?.find(...)가 항상undefined반환
주요 변경사항
1. fetchMegaEvolutionData 함수 수정
파일: src/app/detail/[pokemonId]/(form)/modules/fetchDetailData.ts
메가진화 데이터 조회 시 버전 그룹도 함께 조회하도록 수정
변경 전:
export const fetchMegaEvolutionData = async (
pokemonId: number,
): Promise<PokemonMegaEvolution[]> => {
const apolloClient = initializeApollo()
const { data } = await apolloClient.query<GetPokemonMegaEvolutionQuery>({
query: GetPokemonMegaEvolutionDocument,
variables: { pokemonId },
fetchPolicy: 'cache-first',
})
return data?.getPokemonMegaEvolution ?? []
}
변경 후:
export const fetchMegaEvolutionData = async (
pokemonId: number,
): Promise<{
megaEvolutionData: PokemonMegaEvolution[]
versionGroupData: VersionGroup[]
}> => {
const apolloClient = initializeApollo()
const [{ data: megaData }, { data: versionGroup }] = await Promise.all([
apolloClient.query<GetPokemonMegaEvolutionQuery>({
query: GetPokemonMegaEvolutionDocument,
variables: { pokemonId },
fetchPolicy: 'cache-first',
}),
apolloClient.query<GetVersionGroupsQuery>({
query: GetVersionGroupsDocument,
fetchPolicy: 'cache-first',
}),
])
return {
megaEvolutionData: megaData?.getPokemonMegaEvolution ?? [],
versionGroupData: versionGroup?.getVersionGroups ?? [],
}
}
2. 메가진화 페이지에서 versionGroup 전달
파일: src/app/detail/[pokemonId]/(form)/mega/[[...index]]/page.tsx
변경 전:
const megaEvolutionData = await fetchMegaEvolutionData(parsedPokemonId)
const props = {
// ...
versionGroup: undefined,
// ...
}
변경 후:
const { megaEvolutionData, versionGroupData } =
await fetchMegaEvolutionData(parsedPokemonId)
const props = {
// ...
versionGroup: versionGroupData.length > 0 ? versionGroupData : undefined,
// ...
}
3. moves/form 페이지 버전 조회 수정 (추가 수정)
파일: src/app/detail/[pokemonId]/moves/form/[[...index]]/page.tsx
버전 그룹 조회 시 activeIndex를 항상 0(일반 폼)으로 고정
