为啥 React 有自己的服务器?
Posted
技术标签:
【中文标题】为啥 React 有自己的服务器?【英文标题】:Why does React have a server on its own?为什么 React 有自己的服务器? 【发布时间】:2020-05-17 13:43:01 【问题描述】:首先,我知道这个问题的表述很糟糕。由于我是初学者,我想不出任何东西来描述这种情况。
所以当我们在 cmd 上输入 npx create-react-app myapp
时,这会设置 react 项目。然后我们可以做npm start
并且我们可以在localhost:3000
上查看react 应用程序。我想知道为什么会这样。 react 应用程序在客户端,为什么需要服务器?接下来,我想设置一个node js服务器,它需要使用与react app相同的端口吗?我的胆子说不。简而言之,我想知道为什么在客户端反应时使用localhost:3000
。
提前致谢
【问题讨论】:
它是一个开发服务器,用于在您在本地工作时查看结果。它不用于生产,也不包含在构建输出中。 好的,所以我只需要将node js 分开设置并从react 应用程序正常交互? 我不知道你到底想做什么,但可能。如果你的意思是你的 React 前端会有一个 Node/Express 后端,这里有一种方法:github.com/textbook/starter-kit 非常感谢。这就是我想做的。 【参考方案1】:使用 React 不需要节点。你不需要 Node 来运行 React 项目。 React 是一个客户端 UI 库。 Node 提供了一系列工具,让您能够更轻松地使用 React,例如 Webpack(将代码收集到单个包中并监听文件更改以重新加载此包以显示更新的代码)和 Babel(转换ES6 和 JSX 到纯 javascript)。 npx 本身是一个 Node 工具,它允许您运行一个包,在本例中使用 Create React App,它允许您轻松启动一个新的 React 项目。您看到的服务器只是为了允许重新加载应用程序以实时响应文件更改。服务器仅供开发使用。
【讨论】:
以上是关于为啥 React 有自己的服务器?的主要内容,如果未能解决你的问题,请参考以下文章
为啥 react 组件中的 graphQLErrors 总是空的?
为啥我不能为我的 React 服务器端渲染应用导入 CSS 文件?