1

假设我们有以下情况:我们有一个带有帖子提要的博客。当页面加载时,应该已经<PostCard>加载了 3 个,在服务器端创建;用户将向下滚动或按下加载更多按钮,一些新的明信片应动态添加到页面中。

我有 Hack 的 XHP 组件<PostCard>,我们有 ReactJS 组件<PostCard>

那么,我应该:

  1. 在客户端,在 React 中实现整个事情并且只有 XHP 组件的render()方法constructReactInstance()?(我曾经做过类似的事情,但我注意到页面加载有一些延迟,比如“滞后”)。
  2. 在服务器端和客户端实现组件两次?(这是一个彻头彻尾的痛苦......)
  3. 还有什么……?

我希望我说清楚了,有人可以帮助我:smile_cat:

4

2 回答 2

0

据我所知,没有在 HHVM 服务器上呈现 React 的开源解决方案,因此您将不得不在某个地方进行权衡。调用 XHP 的方式RenderReactInstance是集成 XHP 和 React 的一种有效解决方案,但是当页面加载然后解析和执行 JS 时,您将遭受感知的“滞后”。缓存可以提供帮助,但它仍然需要解析和运行 JS。或者,您可以将其设为 XHP 组件,并将 React 组件保存为更小细节的项目。具体来说,您可能只希望评论部分是 React,如果它是主要的交互式组件并且可以比其他任何内容稍晚加载的内容。这将使博客文章内容在页面加载时呈现,但您可能必须编写其他非 React JS 来处理新组件的异步加载。这都是一种权衡,我认为你只需要确定你认为对你更重要的东西。

于 2016-05-09T21:05:19.243 回答
0

当然还有 XHP 和 React JS 的环境。你可以在这里找到你需要的东西:https ://github.com/hhvm/xhp-js

您可以将所有这些结合在一起做非常强大的事情。需要适应时间,但有一些 Facebook 人做的很棒的教程,而且很好解释:https ://github.com/hhvm/xhp-js-example

于 2016-11-15T11:52:07.210 回答