mirror of
https://github.com/nowcommunity/nowdatabase.git
synced 2026-10-12 19:13:52 +03:00
Fix navigation causing re-render loop in locality details
This commit is contained in:
@@ -21,15 +21,16 @@ export const LocalityDetails = () => {
|
||||
const { id } = useParams()
|
||||
const navigate = useNavigate()
|
||||
const isNew = id === 'new'
|
||||
const { isLoading, isFetching, isError, data } = useGetLocalityDetailsQuery(id!, { skip: isNew })
|
||||
const [editLocalityRequest, { isSuccess, data: newData }] = useEditLocalityMutation()
|
||||
|
||||
if (isSuccess && newData) navigate(`/locality/${newData.id}`)
|
||||
const [editLocalityRequest, { isLoading: mutationLoading }] = useEditLocalityMutation()
|
||||
const { isFetching, isError, data } = useGetLocalityDetailsQuery(id!, {
|
||||
skip: isNew,
|
||||
})
|
||||
if (isError) return <div>Error loading data</div>
|
||||
if (isLoading || isFetching || (!data && !isNew)) return <CircularProgress />
|
||||
if (isFetching || (!data && !isNew) || mutationLoading) return <CircularProgress />
|
||||
|
||||
const onWrite = async (editData: EditDataType<LocalityDetailsType>) => {
|
||||
await editLocalityRequest(editData)
|
||||
const { id } = await editLocalityRequest(editData).unwrap()
|
||||
navigate(`/locality/${id}`)
|
||||
}
|
||||
|
||||
const tabs: TabType[] = [
|
||||
|
||||
Reference in New Issue
Block a user