Почему реагирующая загрузка делает восстановление настолько медленным в моем проекте?
Я работаю над проектом, который использовал реагирующую загрузку следующим образом:
const routes = [{component: 'a'}, {component: 'b'}]
routes.forEach(data => {
data.cmp = Loadable({
loader: () => import('./Approve/' + data.component),
loading: () => <Loading />
})
})
JSX похож на:
<Switch>
<Route path="/login" component={Login} />
<Route path="/" render={(props) => {
return (
<CoreLayout>
<Content>
{routes.map(route => {
return (
<Route key={route.component} path={'/' + route.component} component={route.cmp} />
)
}) }
</Content>
</CoreLayout>
)
}} />
</Switch>
Если я изменяю файл в проекте, ему нужно 30 секунд, чтобы перезагрузить страницу, но при записи таким образом время перезагрузки сократится до 5 секунд.
const a = Loadable({
loader: () => import('./Approve/a'),
loading: Loading,
});
const b = Loadable({
loader: () => import('./Approve/b'),
loading: Loading,
});
<Switch>
<Route path="/login" component={Login} />
<Route path="/" render={(props) => {
return (
<CoreLayout>
<Content>
<Route path={'/a'} component={a} />
<Route path={'/b'} component={b} />
</Content>
</CoreLayout>
)
}} />
</Switch>
Я не хочу импортировать компонент один за другим, как это, но я не знаю, почему это приведет к такой медленной перезагрузке, когда я изменяю любой файл. Что вызвало это и как я могу решить эту проблему? (В реальном случае маршруты - это длинный массив)