Java Springboot 中的服务器端渲染 React

IT技术 java reactjs spring-boot thymeleaf server-side-rendering
2021-05-11 06:26:14

我是服务器端渲染的新手,我想在服务器端渲染 React 组件并在 html 中传递它。

我在https://spring.io/guides/tutorials/react-and-spring-data-rest/上遵循了本教程它仍在客户端呈现。

renderToString在 thymeleaf 模板中找不到方法

我该怎么做呢?

2个回答

使用 Nashorn 你可以做到,Nashorn 是一个默认用 Java 打包的 JavaScript 引擎。

Nashorn 已作为 Java 8 的一部分发布。这主要侧重于允许在 Java 中嵌入 JavaScript 应用程序。

Nashorn 将内存中的 JavaScript 编译为 Java 字节码,并将其传递给 JVM 执行。

您可以查看以下链接的更多详细信息:-

https://www.baeldung.com/react-nashorn-isomorphic-app

**

Nashorn 现已弃用,因此您可以为此使用 GraalVM

**

https://medium.com/graalvm/improve-react-js-server-side-rendering-by-150-with-graalvm-58a06ccb45df

GraajVM 在服务器端渲染 React 应用程序时非常方便,基准测试证明了与 V8 相比具有可比性和出色的结果。Bellow 是一个极好的实现:https : //github.com/davehancock/thymeleaf-reactjs-graalvm