Fonrtend_Start_Code/src/App.jsx

49 lines
1.3 KiB
JavaScript

import { Provider } from 'react-redux';
import { BrowserRouter } from 'react-router-dom';
import { PersistGate } from 'redux-persist/integration/react';
import store, { persistor } from './store';
import Theme from '@/components/template/Theme';
import Layout from '@/components/layout';
import history from './history';
import './locales';
import { QueryClient, QueryClientProvider } from '@tanstack/react-query';
import { ReactQueryDevtools } from '@tanstack/react-query-devtools';
const queryClient = new QueryClient({
defaultOptions: {
queries: {
retry: 3,
cacheTime: 1000 * 60 * 5, // 5 minutes
staleTime: 2000, // 2 seconds
// refetchOnWindowFocus: false,
// refetchOnMount: false,
// refetchOnReconnect: false,
// refetchIntervalInBackground: false,
// refetchInterval: false,
onError: (error) => {
console.log(error);
}
},
},
});
function App() {
return (
<Provider store={store}>
<PersistGate loading={null} persistor={persistor}>
<QueryClientProvider client={queryClient}>
<BrowserRouter history={history}>
<Theme>
<Layout />
</Theme>
</BrowserRouter>
<ReactQueryDevtools initialIsOpen={false} />
</QueryClientProvider>
</PersistGate>
</Provider>
);
}
export default App;