我对反应中的代码拆分有疑问。假设您有一些名为 page1、page2 等的组件,并且还有一个 pages 文件,该文件使用React.lazy导出页面组件,并且您将 app 文件作为呈现这些页面的根组件。
页面文件:
import React from "react";
const Page1 = React.lazy(() => import("./page1"));
const Page2 = React.lazy(() => import("./page2"));
const Page3 = React.lazy(() => import("./page3"));
const pages = [{
component: Page1,
}, {
component: Page2,
}, {
component: Page3,
}];
export default pages;
应用程序文件:
import React, { Suspense } from "react";
import pages from "./pages";
const App: React.FC = () => (
<div>
<Suspense fallback={<div>Loading</div>}>
{pages.map((c) => <c.component />)}
</Suspense>
</div>
);
export default App;
当我在 react 中尝试这种设置时没有问题,并且 React 成功呈现页面并为所有页面创建多个块,但我不确定这种方法。我在代码拆分方面做得对吗?