react route 4 按需加载

发布于 2022-09-06 03:55:35 字数 1032 浏览 19 评论 0

使用react-router4的按需加载,按照官方文档的设置login 和主页面进行分离,登录login 的时候我看了下,bundle.js文件也被加载了,怎么设置在直接进入分离出来的模块的时候,不去加载bundle文件

route.js

const Login = (props) => (
    <Bundle load={() => import('./components/login')}>
        {(Login) => <Login {...props} />}
    </Bundle>
)

const Admin = (props) => {
    return (
        <Bundle load={() => import('./components/admin')}>
            {(Admin) => <Admin {...props} />}
        </Bundle>
    )
}
class App extends Component {
    render() {
        return (
            <Switch>
                <Route path="/nest/app" component={Admin} />
                <Route path="/nest/login" exact component={Login} />

                {/* 重定向路由 */}
                {<Redirect from="/nest" to="/nest/app" />}
            </Switch>
        );
    }
}

浏览器加载信息

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

离笑几人歌 2022-09-13 03:55:35

好像是require.ensure吧

云巢 2022-09-13 03:55:35

bundle是所有页面的通用js代码,不能不加载的,比如react.js库,你写的App class都是打包到bundle.js中的。按需加载,指的是按需加载不同route对应的代码,但bundle.js在任何一个route下都是需要的,当然是会被加载的。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文