Gatsby 盖茨比构建过程和窗口/文档

Gatsby 盖茨比构建过程和窗口/文档,gatsby,Gatsby,因此,我发现使用窗口/文档可能会导致问题,因为gatsby build正在运行应用程序服务器端,因此window不可用,详情如下 这很好,但我有两个密切相关的问题: 1) 当我运行Gatsby build时,Gatsby实际上在做什么?显而易见的答案是“将React转换为HTML”,但这意味着什么?为什么它要运行应用程序呢 2) 只要我检查每个实例,在我的应用程序中使用窗口是否完全安全?我这样问是因为我注意到,在构建过程中将未定义的传递给一个组件,该组件在窗口中需要数据,这将破坏HTML中的该组

因此,我发现使用窗口/文档可能会导致问题,因为
gatsby build
正在运行应用程序服务器端,因此
window
不可用,详情如下

这很好,但我有两个密切相关的问题:

1) 当我运行
Gatsby build
时,Gatsby实际上在做什么?显而易见的答案是“将React转换为HTML”,但这意味着什么?为什么它要运行应用程序呢

2) 只要我检查每个实例,在我的应用程序中使用
窗口
是否完全安全?我这样问是因为我注意到,在构建过程中将
未定义的
传递给一个组件,该组件在
窗口
中需要数据,这将破坏HTML中的该组件(原因在SO问题中很难解释)

谢谢