javascript - 如何在 Apache Tomcat 中运行 React 应用程序?

标签 javascript java node.js tomcat reactjs

我只能在 Nodejs 服务器上运行任何 ReactApp,但不能在 Tomcat 服务器上运行。

一些问题:

  1. React 是纯粹的客户端渲染库,为什么它需要 Nodejs(基于服务器)?为什么React官方图推荐Nodejs?

  2. Tomcat是跑纯Java应用的,Nodejs是跑纯JavaScript应用的吗?


我尝试通过包含 Reactjs 包含文件在 Apache Tomcat 中运行一个带有几个容器的示例 ReactApplication。但是,我得到一个空白屏幕。检查元素显示非渲染的 JS 源。

更新 1:

如果 Q1 是,则 Here's一个简单的 React 就绪应用程序(包括所有依赖项),可以使用 NPM 在 Nodejs 中轻松运行。如何在 Tomcat 中运行相同的应用程序?我可以使用它创建 Web ARchive 吗?

最佳答案

1.React 是纯粹的客户端渲染库,为什么它需要 Nodejs(基于服务器)?为什么 React 官方图推荐 Nodejs?

React 是一个客户端库,但它需要 NodeJs,原因如下:
- React 使用浏览器不理解的 JSX 语法,因此它需要转换成浏览器可以理解的 javascript 代码,Babel 会做到这一点。 Babel 需要 NodeJs,通过配置你可以将 JSX、ES6 代码转换成浏览器可以理解的 ES 5
- 如果您在服务器端使用 React,您可能还需要 Node js 服务器,但这是可选的

您提供的示例需要使用使用 Babel 的 web-pack 转译成 ES 5 代码。 WebPack 和 Babel 都需要 node js。因此,您需要 NodeJ。

关于javascript - 如何在 Apache Tomcat 中运行 React 应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37917134/

相关文章:

node.js - 从 mongodb 检索图像并使用 angular7 显示它

node.js - Node TLS 客户端中出现神秘 TCP 错误

javascript - 如何在自定义环回验证中提供动态消息?

javascript - 无法订阅推送通知

java - 基数排序代码困惑

java - 如何获取 JInternalFrame 的 JFrame(父级)?

node.js - 预发布未按预期工作

javascript - 如何将一个对象属性值指定为另一个对象属性?

javascript - 在 javascript 中可点击多个 css 类

java - org.codehaus.jackson.JsonParseException : Unexpected character ('' (code 65279/0xfeff)): expected a valid value