create-react-app构建的react项目要迁移到服务器上开发,如何做

我用create-react-app脚手架搭建了一个react项目,前期开发了一部分。然后现在要把这个项目放到公司服务器上开发,就是再npm start的时候就不是起本地的服务器了,直接用公司的服务器。我现在还不太明白怎么把现在开发环境下的项目放到服务器上。

阅读 6.1k
6 个回答

这样你只需要执行打包操作,把打包后的文件传到公司服务器的目录下,看你们公司使用了什么文件上传工具

和在本地一样啊,你也在服务器搭一套环境咯,在服务器上 yarn start 不是可以自动编译吗?本地修改好的文件传到服务器上就行了呗,当然,可以通过git push + 钩子实现自动部署

首先,这是一个很脑残的决定。

你说的把项目放到公司服务器上开发,有两种方式。

  • 直接在服务器上写代码。

那就是 ssh 登录到服务器上,然后通过 Linux 下的编辑器,如 VIM 编辑代码,这种方式,跟你本地开发没有什么两样。

  • 源代码在本地,每次保存文件触发构建后自动上传到开发服务器上。

这种方式,CRA 的 npm start 是不行的,webpack-dev-server 也是不行的,因为在开发过程中,它们构建好的文件都是放在内存里的。

比较好理解的方式:webpack -w 监听文件变化并将构建好的文件输出到磁盘上。

然后呢,你可以用 gulp 这样的工具,搞个目录文件监听的插件,目录发生变化时,通过 scp 将文件 复制到你的开发服务器上。

  • 对,还有一种方式

在服务器上 npm start,只是把源代码传到服务器上。如果你用 webstorm 的话,可以创建一个 deployment,可以通过 sftp 上传。

那这样,不是又在服务器上另起了个服务器来跑这个项目嘛?现在是想直接用服务器运行项目

貌似看错问题了,你要在服务器上直接做开发?那我的答案是不要这么做。如果是如何部署到服务器上,请看下面的回答:

  1. 在项目package.json中添加一项配置:"homepage": "."。
  2. 本地执行 npm run build 或 yarn build,项目会被编译到build文件夹下。
  3. 把build文件夹下的文件放到你服务器的web容器中,比如nginx、tomcat、Apache等。完成。

更多内容,可参考:https://github.com/facebookin...

推荐问题