我想知道这是否可能,是否有人以前做过类似的事情。
我需要一种在服务器端序列化反应组件定义(基本上是反应类或函数......)并以某种方式将它们传递给客户端的方法。
我遇到的问题是由于我正在基于动态列表动态呈现一组子组件。根据请求,我咨询服务以获取 URL 列表,需要列表中的所有 js 资产(它们恰好是使用 umd 打包的组件),并且我能够动态呈现服务器端内容。
当我对内容进行水合时,问题发生在客户端。所有组件都重新渲染,但之前获取的组件从 DOM 中消失,因为组件状态为空(服务器端可用的组件,虽然已渲染,但在客户端不可用)。我当然可以在水合之前再次获取列表和组件(类似于服务器端的逻辑)。当然,这会完全破坏服务器端渲染这些组件的目的,所以我想知道是否有更好的方法来做我想做的事。必须有一种方法可以将已经可用的 React 组件定义从服务器端发送到客户端并节省一跳。
有什么想法吗?任何帮助表示赞赏