gpt 출력 값을 받아오는 시간 동안 seMutation의 isLoading이 true일 때 로딩 컴포넌트를 보여주려고 했는데 0.1초만에 false로 바뀌고 출력값은 몇초 뒤에 나옴
→ isLoading이 false가 된 뒤 data를 가져오는 것으로 추정
→ data를 redux에 바로 저장하여 state에 값이 들어올 때까지 로딩 컴포넌트를 보여주게 변경
같은 맥락으로 isLoading이 false가 된 뒤에 data를 렌더하려고 하면 undefined가 뜨는 경우 많음
→ data가 있을 때 렌더하는 것으로 모두 변경
useMutation 후에 post는 실행이 되어 db가 변경 되었는데 db에서 데이터를 가져오는 useQuery문이 재실행되지 않음
const queryClient = useQueryClient();
const authUser = useMutation(tryAuthUser, {
onSuccess: () => {
queryClient.invalidateQueries('users')
}
})
const unAuthUser = useMutation(tryUnauthUser, {
onSuccess: () => {
queryClient.invalidateQueries('users')
}
})
const delUser = useMutation(tryDeleteUser, {
onSuccess: () => {
queryClient.invalidateQueries('users')
}
})
파트 분배를 유동적으로 진행함
→ 처음에는 front & back 을 나눠서 진행했는데 back api 작업이 먼저 끝나면서 front를 나누고 front 작업하면서 필요한 back 작업을 동시에 진행
→ 같은 페이지를 모바일 & 피시 버전으로 나누어 2명이 작업하니 컴포넌트, 기능 등이 많이 꼬임
→ 간단하게 가져다 쓰면 되는 기능들도 입히는 데 시간이 오래 걸려서 비효율적
진행하면서 새로 추가되는 기능들을 그때그때 기존에 있던 데이터를 가공하여 사용
→ 설계가 제대로 되지 않은채로 동일한 데이터를 가공하다보니 중복 데이터가 늘어나고 원하는 값만 다시 가져다 쓸 때조차 재가공 해야했음
→ Main 페이지에서 받은 데이터 + gpt 출력 데이터 redux에만 저장 → Plan 페이지에서 사용 → AddPlace에서 제가공한 데이터 → db에 plan과 attractions 테이블에 각각 저장
→ db에 저장된 정보를 다시 Plan 페이지에서 사용하려고 하니 데이터 형식이 다 틀어져있음