我知道React是前端,而NodeJS是允许Javascript代码在浏览器之外运行的后端。我不了解的(这是在网上跟随有关设置React项目和NodeJS项目的在线教程之后)的原因,为什么我必须分别创建一个实例。
例如,在我的React项目中,我设法创建了一个网站。但是因为需要后端,所以我决定使用NodeJS。但是我正在做NodeJS教程,我也可以使用NodeJS创建一个网站。我很困惑,因为现在看来,这似乎是React和NodeJS做的 SAME 。
我以前从未使用过NodeJS,所以有点困惑。我的印象是,我只会使用NodeJS来托管后端,但是在看到我不得不使用NodeJS创建整个网站后,我不知道如何将React和NodeJS一起使用。
React和NodeJS两者如何集成在一起以创建功能全面的Web应用程序?我还没有看到在线的东西可以清楚地了解两者的相互作用。
答案 0 :(得分:5)
NodeJS只是运行时,允许您在浏览器之外运行javascript代码。
使用nodeJS作为编译和优化代码的工具。
答案 1 :(得分:3)
React是前端库。它为创建用户界面提供了出色的工具。并且它创建一个单页应用程序。这意味着您打开反应应用程序。它不会重新加载,而且速度非常快。
尽管您还可以使用nodejs和类似把手的工具来创建网站。但是该网站将呈现在服务器上,然后提供给用户。但是它的意义远不止于此。您需要在服务器上做很多事情。喜欢认证。您希望该部分是安全的。因此,您可以将其保存在服务器上。
现在回答问题的最后一部分。
对于功能齐全的应用程序。您将使用react创建用户界面。然后使用nodejs创建您的React应用将调用的API。
答案 2 :(得分:2)
NodeJS不仅仅是普通的javascript,它还是一个javascript运行时,位于Google提供的名为V8的C ++引擎之上。 Node在浏览器外部执行,而React / Vue / Angular / etc是浏览器中的JavaScript框架。
反应是一种完全独立的动物;它是一个在浏览器中呈现自己的DOM的框架。这是一个配置为优化DOM操作的JavaScript引擎。
虽然前端和后端的开发模式看起来很相似,但是它们在做不同的事情。 React正在处理浏览器中的数据并进行API调用。 Node正在处理来自浏览器的请求,进行数据库调用,处理身份验证等。由于这些职责的不同,Node使用的模块不同于前端框架。
最终,Node和React通常通过称为Axios的程序包通过HTTP调用进行通信。还有其他一些,但是目前很常见。
您应该阅读有关节点如何在后台工作的信息。
答案 3 :(得分:0)
NodeJS将作为您的后端,而ReactJS将创建接口/ UI,您可以在其中实际操作服务器(nodeJS)。因此,首先您将编写您的NodeJS服务器或API。您不需要 使用ReactJS创建可以与节点服务器交互的前端,就像您说可以使用NodeJS通过不同的库创建视图一样。对于您的NodeJS应用程序的前端,ReactJS只是众多选择中的一种。
答案 4 :(得分:0)
NodeJS是一个JavaScript框架,可让您创建服务器以使用Express或内置库为网站服务。它也能够仅使用NodeJS来构建网站。
您可以利用NodeJS服务器进行服务器端渲染的功能。 https://reactjs.org/docs/react-dom-server.html
有一个称为NextJS的ReactJS框架,它具有ReactJS组件的服务器端呈现。 https://nextjs.org/#features
您可能会在网站上某些区域完全由NodeJS构建,而其他页面则使用ReactJS和NodeJS后端。但是将ReactJS用作前端,将NodeJS用作后端,会更干净。
答案 5 :(得分:0)
重点是反应,其他任何SPA库都在客户端(浏览器)上工作。
反应从服务器API获取并使用数据。
您不需要使用Node.js来构建API。您可以根据自己喜欢的技术使用各种框架。
如果您不熟悉后端,则可以使用https://www.npmjs.com/package/http-server获得虚假的API服务,并可以使用它构建前端部分。