如何在本地网络上部署React + Express应用程序?



这是我在这里的第一个帖子,如果我做错了,请告诉我。首先我想说的是,我是一名初级开发人员。我上过很多课,但这也是我第一次自己动手,从头到尾(强调"结束")。

我正在制作一个相对简单的应用程序,用于用户管理(CRUD,具有不同级别的授权)和商店管理。我可以选择要使用的工具、框架、语言等,唯一的限制是:1/使用的主要设备将是平板电脑;2/不应该在线托管。我想更熟悉Javascript,所以我用Express Nodejs(后)创建了一个React应用程序(前端)和一个MySQL数据库,我通过Sequelize访问。

开发进展顺利(在很大程度上要感谢这里的许多伟大的帖子),但我只是受到现实的打击,我从来没有尝试过构建应用程序,看看它是否按照我的方式运行。我不知道该怎么做。我应该早点调查的。

到目前为止,在开发中,我总是通过运行npm start(前端)和node server.js(后端)在PC和手机上测试所有内容,并且客户端在浏览器中运行(当使用电话时,我访问IP地址和端口,如192.168.x.x:3000)。后端监听8080端口没有问题,由于Sequelize,对MySQL数据库的访问工作正常。前端监听3000端口以在浏览器上显示用户界面,React使前端开发功能变得容易,并快速排除故障。一切正常,正如预期的那样,在同一网络中的任何人(使用web浏览器)都可以以这种方式访问和使用该应用程序。

这是我想在生产构建中复制的行为:有一台计算机托管构建,并运行"服务器";这样应用程序就可以在本地网络中的任何设备上使用。所以我想我需要以某种方式使我的构建能够打开和关闭"服务器"。随意,也许是通过。exe文件?还是和电脑同时打开?

我知道我应该早点研究一下,没有这样做是个错误。我所知道的是,我将不得不使用npm run build,以获得构建文件夹,但我不知道从那里做什么。你能帮我弄明白吗?在许多我不确定的事情中,主机(不是我的)是否需要安装node.js ?它还必须安装MySQL吗?我是单独构建后端和前端,还是分别构建两者?如果有,怎么做?

如果您需要查看部分代码,请告诉我。提前谢谢你,祝你有美好的一天。

编辑:应用程序是使用create react app创建的

可以选择在云服务器上部署。但我想你是想在本地机器上托管应用程序。你需要创建一个服务,捆绑应用程序,并在你需要的时候提供服务。

下面的链接可能会有帮助https://www.section.io/engineering-education/compile-your-nodejs-application-into-a-exe-file/

最新更新