【React】路由懒加载 React.lazy()

React路由懒加载lazy()

React.lazy()懒加载概念

我们在使用网站时,如果不对路由使用懒加载,则会导致刚打开网站就加载全部路由,当网站中的路由组件足够多时则会大大减慢网站的加载速度

路由懒加载就是加载首页时不加载其他组件,当你点击对应的模块,才按需去加载路由对应的资源, 可以提高加载速度,加快首页渲染 (一个页面加载过后再次访问不会重复加载)

React.lazy()使用

方法:通过react中的lazy() 这个api来动态import需要懒加载的组件

Suspense来包裹懒加载的组件进行加载,可以设置fallback现实加载中效果

如果只使用lazy但是不使用Suspense会引发报错

import { BrowserRouter as Router, Route, Switch } from 'react-router-dom';
import { Suspense, lazy } from 'react';
const Home = lazy(() => import('./routes/Home'))
const count = lazy(() => import('./routes/count'))
 

export default class App extends Component {
  render() {
    return (
      <div>
          <Router>
            <Suspense fallback={<h1>Loading...</h1>}>
              <Switch>
                <Route exact path="/" component={Home}/>
                <Route path="/count" component={count}/>
                ...
              </Switch>
            </Suspense>
          </Router>
      </div>
    )
  }
}

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值