【发布时间】:2019-10-26 10:00:00
【问题描述】:
我们已经使用 CRA 和路由器构建了一个 react 应用。我们希望在其上实施 SSR,以便我们可以获得适当的 SEO 和社交媒体支持。我已经看到并尝试了许多可用的技术,但这些技术似乎都不起作用。
我们以这样一种方式制作我们的应用程序,其中很多实际上依赖于浏览器才能正常工作,例如window 对象。一种技术(某种)有效,但在服务器端运行代码会出现错误;
ReferenceError: 'window' is not defined
我们要实施 SSR 的主要原因是网站的 SEO 和社交媒体识别。我们正在动态添加元标签(使用 React Hemlet),因此 facebook、twitter 等无法获取标签。
所以现在的问题是;
是否有合适的方法在已构建的反应站点上实施 SSR?
我们可以使用任何替代方案吗?该站点有大量从远程 API 端点获取的资源,因此预渲染不是一种选择。
【问题讨论】:
标签: javascript reactjs babeljs router server-side-rendering