1.0.1 • Published 2 years ago

no-ssr v1.0.1

Weekly downloads
-
License
-
Repository
github
Last release
2 years ago

no-ssr

no-ssr 是一个基于react的服务端渲染组件,可将其包裹的组件延迟至客户端加载,避免因服务端与客户端渲染结果不一致引发的问题。

no-ssr 提供 react hooksreact class 两种类型的组件,以适应各种项目需求。

使用

import { ClassNoSSR, HooksNoSSR } from "no-ssr"

// with hooks
<HooksNoSSR>
	<Comp /> // 需要延迟到客户端渲染的组件
</HooksNoSSR>

// with class component
<ClassNoSSR onSSR={<Loading />}>
	<Comp />	// 需要延迟到客户端渲染的组件
</ClassNoSSR>

示例

import { ClassNoSSR, HooksNoSSR } from "no-ssr"

const Loading = () => <div>loading</div>

const Demo: NextPage = () => {
  return (
    <div className={styles.container}>
        <HooksNoSSR>
          <Comp />
        </HooksNoSSR>
        <ClassNoSSR onSSR={<Loading />}>
          <Comp />
        </ClassNoSSR>
     </div>
  );
}

组件

组件说明
HooksNoSSRreact hooks 组件
ClassNoSSRreact class 组件

api

属性说明类型默认值
children需要延迟到客户端渲染的组件或元素ReactNode | undefined-
onSRR服务端渲染骨架ReactNode | undefiend-