极客时间返利平台,你可以在上边通过山月的链接购买课程,并添加我的微信 (shanyue94) 领取返现。

# 在 SSR 项目中如何判断当前环境时服务器端还是浏览器端

Issue

欢迎在 Gtihub Issue 中回答此问题: Issue 474 (opens new window)

  1. SSR 渲染的时候,服务端与客户端走不同的 webpack 打包配置。 那么就可以在打包的时候写入区分环境的环境变量。
  2. 服务器端是没有 window document 等浏览器宿主环境对象的,可以通过 类型检测 这些对象 来区分。

::: tip Author
回答者: [shfshanyue](https://github.com/shfshanyue)
:::

``` js
const isServer = typeof window === 'undefined'
  1. SSR 渲染的时候,服务端与客户端走不同的 webpack 打包配置。 那么就可以在打包的时候写入区分环境的环境变量。
  2. 服务器端是没有 window document 等浏览器宿主环境对象的,可以通过 类型检测 这些对象 来区分。

一般就是通过第二条来区分了

Last Updated: 11/27/2021, 6:11:48 PM