React 服务器和 React 客户端之间的区别

Difference between React Server and React Client

我研究 react.js 框架已经有一段时间了。我还没有完全理解客户端和服务器端渲染之间的区别(尽管努力寻找 CLEAR 差异)。因此,我非常感谢善良的灵魂为这个主题提供清晰明了的解释?

顺便说一句,我是.NET背景的,所以我仍在努力调整我的想法,以更加面向JS的编程方式。

谢谢!

在服务器端呈现中,您正在处理 Web 服务器(考虑编写一些 C#.Net 或其他内容),您没有文档或 window,就像您在浏览器中所做的那样。因此,React 所做的是在内存中构建一个 "virtual" DOM,然后它实际上可以将其转换为具有特殊属性的 HTML 字符串,它将在浏览器中获取。然后,您使用 html 字符串响应 HTTP 请求。然后,当您在浏览器中加载 React 应用程序时,它会从服务器停止的地方开始,并在浏览器的内存中构建另一个 "virtual" DOM。如果操作正确,在此过程中根本不需要操作文档,因此浏览器会加载此动态页面,就好像它是静态 html 文件一样。但是现在你有一个实时的 React 虚拟 DOM 并且应用程序可以导航到不同的页面,或者以其他方式更新,使用 React 惊人的渲染引擎,为你提供非常优化的网络体验,只需很少的工作。

要做到这一点,需要将大量的 NPM 包拼凑在一起,并尝试找到最符合您的用例的示例,这可能会有点令人沮丧,因为 .NET 的所有内容都真正整合到了一个单一框架。有许多不同的工具和技术(lint、transpile、捆绑、测试、构建等)需要考虑用于应用程序的每一部分,并且可能需要一些时间和摆弄才能让它们一起工作。基本上,这是当今您为获得最佳网络应用程序而付出的代价。这些工具的功能令人惊叹,但入门肯定有一个陡峭的学习曲线。这里的人总是很快提供帮助!