1.0.0 • Published 4 years ago

ncnbb-react-loadable v1.0.0

Weekly downloads
2
License
MIT
Repository
github
Last release
4 years ago

简介

基于React封装的统一处理异步加载组件的加载器组件,能更贴合React开发的方式处理异步加载组件的逻辑,对加载失败,加载超时,加载中和加载成功进行处理。

安装

npm install ncnbb-react-loadable

使用须知

  • 项目目录下,必须配置@babel/plugin-syntax-dynamic-import插件,让webpack处理import()特殊Api
  • 被加载的组件必须使用export default进行导出
  • 需要使用react16版本及以上

参数

属性说明类型默认值
loader异步获取组件函数,必须返回一个promiseFunction必传
loading加载中展示组件JSX.Element、JSX.Componentnull
error加载错误展示组件JSX.Element、JSX.Componentnull
overTime加载超时展示组件JSX.Element、JSX.Componentnull
timeout超时时间numbernull
delay延迟加载时间numbernull
callback状态回调Function(status: 'done'|'error'|'overTime', error: Error | null)null

实例

import loadable from 'ncnbb-react-loadable';

const LoadableComponent = loadable( {
    loader: () => import( './Sub.jsx' ),
    loading: Loading,
    timeout: 2000,
    delay: 3000,
    error: Error,
    callback: (status, error) => {console.log(status)},
    overTime: <OverTime />
} );

render () {
    return (
        <div>
            <LoadableComponent num={this.state.num} text='这是一个加载后的内容' />
        </div>
    );
}