Всякий раз, когда я направляюсь на страницу / supportservice / settings, пока эта страница загружается, страница 404 отображается на экране, а через некоторое время на экране появляется страница / supportservice / settings. Я старался изо всех сил, чтобы страница 404 перестала отображаться при маршруте в / supportservice / settings. Служба поддержки имеет внутреннюю выборку данных, которая занимает немного времени, в то время как загрузка 404 страниц отображается на экране, кредиторы службы поддержки через некоторое время после выборки данных. Я был на этом в течение нескольких дней.
import React, { Suspense } from 'react';
import { BrowserRouter as Router, Switch, Route } from 'react-router-dom';
import Loader from './loader';
import AuthProvider from './authContext';
const SupportServiceDashboard = React.lazy(() =>
import('../components/support-service/Dashboard/supportServiceDashboard')
);
const PrivateRoute = React.lazy(() =>
import('./privateRoute')
);
const SupportServiceConfirmationPage = React.lazy(() =>
import('./adminConfirmationPage')
);
const SupportServiceResetPassword = React.lazy(() =>
import('../components/support-service/registration/resetPassword')
);
const PersonnelDashboard = React.lazy(() =>
import('../components/personnel/home/personnelDashboard')
);
const Signup = React.lazy(() =>
import('../components/personnel/registration/signUp')
);
const SignIn = React.lazy(() =>
import('../components/personnel/registration/signIn')
);
const ResetPassword = React.lazy(() =>
import('../components/personnel/registration/resetPassword')
);
const ForgetPassword = React.lazy(() =>
import('../components/personnel/registration/forgetPassword')
);
const SupportServiceSignUp = React.lazy(() =>
import('../components/support-service/registration/supportServiceSignUp')
);
const SupportServiceSignIn = React.lazy(() =>
import('../components/support-service/registration/supportServiceSignIn')
);
const SupportServiceForgetPassword = React.lazy(() =>
import('../components/support-service/registration/supportServiceForgetPassword')
);
const ConfirmPage = React.lazy(() =>
import('./confirmPage')
);
const SupportServiceNavBar = React.lazy(() =>
import('../components/support-service/supportServiceNavbar')
);
const ManageTimesheet = React.lazy(() =>
import('../components/support-service/Manage-timesheet/ManageTimesheet')
);
const SupportServiceSettings = React.lazy(() =>
import('../components/support-service/settings_page/supportServiceSettings')
);
const PersonnelList = React.lazy(() => import('../components/support-service/settings_page/personnel-list'));
const PageNotFound = React.lazy(() => import('../utils/pageNotFound'));
const ClientList = React.lazy(() => import('../components/support-service/settings_page/clientList'));
function Routes() {
const change = true;
return (
<div className="App">
{/* <Nav /> */}
<Router>
<AuthProvider>
<Switch>
<Suspense fallback={<Loader />}>
<Route exact path="/" component={SignIn} />
<Route exact path="/signup" component={Signup} />
<Route exact path="/login" component={SignIn} />
<Route exact path="/forgotpassword" component={ForgetPassword} />
<Route exact path="/passwordreset/:id" component={ResetPassword} />
<Route exact path="/supportservice/passwordreset/:id" component={SupportServiceResetPassword} />
<Route exact path="/supportservice/signup" component={SupportServiceSignUp} />
<Route
exact
path="/supportservice/login"
component={SupportServiceSignIn}
/>
<Route
exact
path="/login/:id"
component={ConfirmPage}
/>
<Route
exact
path="/supportservice/login/:id"
component={SupportServiceConfirmationPage}
/>
<Route
exact
path="/supportservice/forgotpassword"
component={SupportServiceForgetPassword}
/>
{/* <Route
exact
path="/pagenotfound"
component={PageNotFound}
/> */}
<Route
exact
path="/supportservice/forgotpassword"
component={SupportServiceForgetPassword}
/>
<Route
exact
path="/supportservice/nav"
component={SupportServiceNavBar}
/>
<Route
exact
path="/supportservice/manage-timesheet"
component={ManageTimesheet}
/>
<PrivateRoute exact path='/supportservice/dashboard' component={SupportServiceDashboard} role='support_service' redirect='/supportservice/login'/>
<PrivateRoute exact path='/dashboard' component={PersonnelDashboard} role='personnel' redirect='/login'/>
<PrivateRoute exact path='/supportservice/settings' component={SupportServiceSettings} role='support_service' redirect='/supportservice/login'/>
<PrivateRoute path='/supportservice/settings/personnel_list' component={PersonnelList} role='support_service' redirect='/supportservice/login'/>
<PrivateRoute path='/supportservice/settings/client_list' component={ClientList} role='support_service' redirect='/supportservice/login'/>
<Route component={PageNotFound} />
</Suspense>
</Switch>
</AuthProvider>
</Router>
</div>
);
}
export default Routes;