在Java Springboot中进行服务器端渲染React。

11

1
不可能实现,您需要使用node.js对React或任何其他单页面应用框架进行服务器端渲染。 - JEY
1
谢谢您的评论。您能提供一个链接或一些资源来支持您的陈述吗? - yogupta
对不起,你需要在服务器端解释js。也许你可以使用Java中的nashorn来实现这一点。看看Spring团队的这个repo https://github.com/sdeleuze/spring-react-isomorphic,你会找到更多使用node.js的例子。 - JEY
他们在这个教程中进行了配置 https://spring.io/guides/tutorials/react-and-spring-data-rest/,但是他们没有在服务器端渲染它 https://stackoverflow.com/questions/46388210/server-side-rendering-react-using-spring-boot。我希望能够在服务器端渲染并将HTML发送到客户端(更像是等同应用程序)。 - yogupta
这正是我给你的项目所做的。他们设置了ScriptTemplateConfigurer和ScriptTemplateViewResolver。 - JEY
2个回答

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


实际上,Baledung在这个主题上有一篇不错的文章:https://www.baeldung.com/react-nashorn-isomorphic-app。您需要通过Java运行JS引擎,在后端执行JS代码,以便在将某些组件发送到客户端之前填充它们。用户可以获得更好的性能,但会消耗服务器计算资源。 - Gabriel Robaina

0

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接