以下に示すような react-admin アプリを検討してください。ユーザーがログインした後にすべてがロードさ'./posts'
れるように、コードを分割する予定です。'./users'
webpack がアプリのコード分割を自動的に開始するように、使用できる動的 import() 構文を使用する予定です。
私が見る問題は、すべてのアプリ コンポーネントがアプリの定義と共にインポートされることです。の動的インポートは、アプリ自体でインポートされるため、分割さ'./posts'
れ'./users'
ません。
このコードベースをセットアップして分割し、ユーザーがログインした後にのみ読み込まれるようにするにはどうすればよい'./posts'
です'./users'
か?
import React, { Component } from 'react';
import { Admin, Resource } from 'react-admin';
import { Login } from 'ra-ui-materialui';
import { authProvider, dataProvider, i18nProvider } from './providers';
// vvv - to be loaded after the user has logged in
import { PostList, PostEdit, PostCreate, PostIcon } from './posts';
import { UserList, UserEdit, UserCreate, UserIcon } from './users';
// ∧∧∧
class App extends Component {
render() {
return (
<Admin
title="MyApp"
loginPage={Login}
dataProvider={dataProvider}
authProvider={authProvider}
i18nProvider={i18nProvider}
>
<Resource
name="posts"
list={PostList}
edit={PostEdit}
create={PostCreate}
icon={PostIcon}
/>
<Resource
name="users"
list={UserList}
edit={UserEdit}
create={UserCreate}
icon={UserIcon}
/>
</Admin>
);
}
}
export default App;