现在 Airbnb 有一个工具Hypernova用于 javascript 视图的服务器端渲染。我想知道它是否可以用于增强基于 Ajax 的网站的 SEO,例如使用Prerender的工具。如果不是那为什么?
问问题
609 次
1 回答
4
弄清楚工具如何工作的一种快速方法是检查它的依赖关系。它不包含phantom
无头浏览器或其他适配器,因此它只评估 Node.js 中的客户端脚本。
hypernova 在 Node.js 中运行客户端脚本并将它们呈现为 HTML。为了使这成为可能,脚本应该是通用的,并且不依赖于特定于浏览器的功能。这可以避免在无头浏览器中渲染所导致的开销(就像 Prerender 一样)。
hypernova 文档专注于使用 React 组件,因为它们自然是通用的,并且大多数时候在 Node.js 中渲染时不需要真正的 DOM,它们是使用hypernova-react
package 渲染的,这是对 React 自己的 SSR 功能的薄包装。
AngularJS 是为在浏览器中运行而开发的,并且依赖于真实的 DOM。保证仅在客户端正常工作。可以(至少在理论上)使用 DOM 仿真 ( jsdom
) 或 jQuery 仿真 ( cheerio
) 在 Node.js 中渲染 AngularJS 应用程序,但 hypernova 没有为此提供合适的适配器。
于 2017-09-25T12:31:30.557 回答