如何区分getInitialProps是在服务端环境调用的还是在客户端环境调用的呢?
来源:3-13 nextjs服务端渲染流程深度解析

Shawn_De
2019-04-27
举一个例子:
pages目录有下user.jsx文件暴露了一个Component User
在User里面需要获取数据name和age
在服务端环境下只要读取Redis存储的数据就OK了
在客户端环境下无法读取Redis的数据,所以需要通过Ajax访问服务端的接口
那么,期望的结果如下(伪代码):
getInitialProps = async () => {
// 如果是服务端环境
let { name, age } = await getDataByRedis()
// 如果是客户端环境
let { name, age } = await fetchData()
}
所以,是否有API能够让我们在getInitialProps方法中判定当前是服务端环境还是客户端环境呢?
写回答
1回答
-
typeof window === 'undefined'简单来说就是判断一下是否有window全局对象。
112019-04-27
全栈进阶课程 React16.8+Next.js+Koa2一步到位开发Github
学习React/Next.js服务端渲染SSR同构设计方案,理解OAuth登录体系的实现原理
651 学习 · 311 问题
相似问题