react 懒加载
Posted Jmytea
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了react 懒加载相关的知识,希望对你有一定的参考价值。
react 懒加载
- 从react引入lazy 和 Suspense
- 对于需要懒加载的组件 用lazy包裹引入,lazy是一个函数,参数是一个函数
- 组件最外层用Suspense 包裹 fallback 是一个组件 当组件加载过程中会显示
import React, Component, lazy/* react16.0之后新增的 */, Suspense from "react";
// react异步加载组件的方式
const Box = lazy(()=>import('./modules/Box'));
export default class App extends Component
state =
isShow: false,
;
render()
const isShow = this.state;
return (
<Suspense fallback=<div>loading....</div>>
<div>
<input
type="checkbox"
checked=isShow
onChange=(ev) => this.setState( isShow: !isShow )
/>
/* 异步加载组件, 必须在外面使用Suspense包裹,当组件正在加载时显示Suspense的fallback属性的结构 */
isShow && <Box />
<button onClick=this.btnAction>按钮</button>
</div>
</Suspense>
);
btnAction = () =>
// 异步加载普通的文件
import(/* webpackChunkName: "tools" */ "./modules/tools").then(
( alertMessage, default: console ) =>
alertMessage(123);
console("abcd");
);
;
以上是关于react 懒加载的主要内容,如果未能解决你的问题,请参考以下文章