账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    为什么react-loadable导致项目更改文件时刷新巨慢?
    21
    0

    我有个项目这么写的

    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={'/applyFillIn'} component={applyFillIn} />
              <Route  path={'/processMonitorOffline'} component={processMonitorOffline} />
            </Content>
          </CoreLayout>
        )
      }} />
    </Switch>

    实际项目中routes是个很长的数组
    但我不明白两种写法为什么会造成这种差距,我理解应该是一样的,难道webpack编译的时候区分对待这两种写法吗?

    我不想一个个地import组件

    0
    打赏
    收藏
    点击回答
        全部回答
    • 0
    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部