React路由懒加载、组件懒加载

先下载react-loadable

npm i react-loadable -S

建立一个loadable.js

import Loadable from 'react-loadable'; 
export default function withLoadable (comp) {
    return Loadable({
        loader:comp,
        loading:()=>null,
        delay:"",
    })
}

router.js

import React from 'react';
import { BrowserRouter as Router, Route } from "react-router-dom";
import Bundle from './loadable';
//设置规则 传递值 接收值 显示内容
const Home= Bundle(()=>import('../view/home/home'));
const Login= Bundle(()=>import('../view/login/login'));
function AppRouter() {
  let routerConfig = [
    {path:'/',title:'首页',exact:true,component:Home},
    {path:'/login/:id?',title:'登录',exact:false,component:Login},    
  ]
  return (
    <Router>
      {
        routerConfig.map((item,index)=>{
          return (<Route key={index} exact={item.exact} path={item.path} component={item.component}/>)
        })
      }
    </Router>
  );
}

export default AppRouter;

page下的js文件

import Bundle from "../../utils/loadable";
const Nav = Bundle(() => import("../../component/Nav/Nav"));
const HomeUi = () => {
	  return (
		 <Nav></Nav>
	)
};
export default HomeUi;
  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值