美文网首页
react-loadable的使用 实现react组件异步加载和

react-loadable的使用 实现react组件异步加载和

作者: _一九九一_ | 来源:发表于2019-06-19 20:13 被阅读0次

知识点:

  1. import * from '' 同步执行。
  2. import(相对路径) 异步执行,返回Promise对象 自动 code-splitting(代码分割)
// 安装react-loadable 插件


import React from 'react';
import { HashRouter, Route, Switch, Redirect } from 'react-router-dom';
import Loadable from 'react-loadable';
import App from './App.js'; 
import Admin from './admin';
import Nomatch from './pages/nomatch/404';
import Home from './pages/home';

// 按路由拆分代码
const MyLoadingComponent = ({ isLoading, error }) => {
    if (isLoading) {
        return '加载中...'
    }
    else if (error) {
        return '页面出错了。。。';
    }
    else {
        return null;
    }
};

 
const BaseParts = Loadable({
    loader: () => import('./pages/baseParts'),
    loading: MyLoadingComponent
});

    

class Routers extends React.Component {

    render() {
        return (
            <HashRouter>
                <App>
                    <Switch> 
                        <Route path="/" render={() => 
                                <Switch>  
                                    <Route path="/product/baseParts" component={BaseParts}></Route> 
                                    <Redirect to="/home" />
                                    <Route component={Nomatch}></Route>
                                </Switch> 
                        }></Route>
                    </Switch>
                </App>
            </HashRouter>
        )
    }
}

export default Routers;

 

相关文章

网友评论

      本文标题:react-loadable的使用 实现react组件异步加载和

      本文链接:https://www.haomeiwen.com/subject/jgjlqctx.html