chore: improve toast and show once
This commit is contained in:
@@ -5,7 +5,7 @@ export default function useApiToast() {
|
||||
|
||||
const handleError = (error, defaultMessage = 'API error') => {
|
||||
console.error(error);
|
||||
enqueueSnackbar(error.message || defaultMessage, { variant: 'error' });
|
||||
enqueueSnackbar(defaultMessage, { variant: 'error' });
|
||||
};
|
||||
|
||||
return { handleError };
|
||||
|
||||
@@ -9,14 +9,9 @@ import App from './App.jsx'
|
||||
createRoot(document.getElementById('root')).render(
|
||||
<StrictMode>
|
||||
<ThemeProvider theme={theme}>
|
||||
<SnackbarProvider maxSnack={3}
|
||||
autoHideDuration={5000}
|
||||
anchorOrigin={{
|
||||
vertical: 'top',
|
||||
horizontal: 'right',
|
||||
}}>
|
||||
<SnackbarProvider maxSnack={3} autoHideDuration={3000}>
|
||||
<App />
|
||||
</SnackbarProvider>
|
||||
</ThemeProvider>
|
||||
</StrictMode>,
|
||||
)
|
||||
)
|
||||
@@ -1,5 +1,5 @@
|
||||
import SectionContainer from '../../components/SectionContainer';
|
||||
import { useEffect, useState } from 'react';
|
||||
import { useEffect, useState, useRef } from 'react';
|
||||
import { DataGrid } from '@mui/x-data-grid';
|
||||
import { Typography, Button, Dialog, DialogTitle, DialogContent, IconButton, Box } from '@mui/material';
|
||||
import EditRoundedIcon from '@mui/icons-material/EditRounded';
|
||||
@@ -42,11 +42,14 @@ export default function Admin() {
|
||||
const [rowToDelete, setRowToDelete] = useState(null);
|
||||
const { handleError } = useApiToast();
|
||||
|
||||
useEffect(() => {
|
||||
let isMounted = true;
|
||||
loadData();
|
||||
return () => { isMounted = false };
|
||||
}, []);
|
||||
const hasLoaded = useRef(false);
|
||||
|
||||
useEffect(() => {
|
||||
if (!hasLoaded.current) {
|
||||
loadData();
|
||||
hasLoaded.current = true;
|
||||
}
|
||||
}, []);
|
||||
|
||||
const handleEditClick = (params) => {
|
||||
setEditingData(params.row);
|
||||
|
||||
Reference in New Issue
Block a user