javascript - 如何检测您的 React 应用程序是否已在服务器上渲染?

标签 javascript node.js reactjs

我想在组件中确定我的 React 应用程序是否正在构建以与校验和进行比较或正常渲染。有没有办法让组件在初始“校验和”渲染上的行为略有不同?

具体来说,我有一个使用 Canvas 的组件,而服务器无法做到这一点。因此,在服务器上,我希望它只渲染一个空元素,然后在客户端上匹配校验和并随后更新。

或者在这种情况下,让 React 用新元素替换服务器渲染的元素是否更好?

最佳答案

为了检查环境,我使用了一个简单的辅助函数:

isBrowser = () => typeof window !== 'undefined' && window.document !== undefined;

这是有效的,因为 windowwindow.document 是特定于浏览器的对象。使用此帮助程序,您可以获得特定于浏览器/服务器的行为。

关于javascript - 如何检测您的 React 应用程序是否已在服务器上渲染?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43820161/

相关文章:

javascript - 在 servlet 响应后调用 Servlet 中的 Javascript 函数

javascript - function.call 方法有什么用?

ios - 在哪里可以找到 Bluemix iOS 8 移动应用程序的应用程序路由和 ID?

javascript - 为什么我无法从命令行通过 "node --harmony test.js"启动和谐模式?

reactjs - 将路径数组传递给 "Route"会引发错误

javascript - Redux const { var1, var2 } = this.props;

javascript - 路由器外部链接错误,而一切都设置正确

javascript - 是否可以在 Notepad++ 中缩进 JavaScript 代码?

javascript - 具有多个 div 的页面验证

javascript - 如何从nodejs服务器流式传输到客户端