Шаблон React.lazy с использованием загружаемых компонентов
У меня есть следующий сценарий, когда я не знаю заранее, какой компонент загружать. Решение этой проблемы с использованием React.lazy.
import React, { lazy, Suspense } from "react";
export default class CallingLazyComponents extends React.Component {
render() {
var ComponentToLazyLoad = null;
if(this.props.name == "A") {
ComponentToLazyLoad = lazy(() => import("./AComponent"));
} else if(this.props.name == "B") {
ComponentToLazyLoad = lazy(() => import("./BComponent"));
}
return (
<div>
<h1>This is the Base User: {this.state.name}</h1>
<Suspense fallback={<div>Loading...</div>}>
<ComponentToLazyLoad />
</Suspense>
</div>
)
}
}
Как я могу добиться того же, используя загружаемые компоненты
1 ответ
Я считаю, что лучшее решение вашей проблемы - продолжать использовать React.lazy, как рекомендует автор loadable-components, поскольку "он больше не поддерживается и несовместим с Webpack v4+ и Babel v7+"