大前端快闪二:React开发模式 一键启动多个服务

开发 前端
最近全权负责了一个前后端分离的web项目,前端使用create-react-app[1], 后端使用golang做的api服务。

[[425951]]

本文转载自微信公众号「精益码农」,作者有态度的马甲。转载本文请联系精益码农公众号。

最近全权负责了一个前后端分离的web项目,前端使用create-react-app[1], 后端使用golang做的api服务。

  1. npx create-react-app my-app 
  2.  
  3. cd my-app 
  4.  
  5. npm start 

歘歘歘,就搭建了一个react前端项目。

前端老鸟都知道npm start或yarn start以开发模式启动react App:在localhost:3000调试预览前端项目,编辑器的变更会实时体现在web页面。

前端老鸟也知道npm run build或yarn build是以生产为目标,将优化后的静态文件输出到build文件夹 (优化构建性能、压缩产出物、给文件名哈希)。

从一个全栈程序员的视角,开发时最好能一次启动前后端两个程序。

快闪二:你能在react app开发模式中一键启动多个服务吗?

1. 安装concurrently插件

  1. npm install concurrently -D 

2 . 配置npm命令

  1. "scripts": { 
  2.   "start""concurrently  \"react-scripts start\"  \"go run main.go\" "
  3.   "build""react-app-rewired build"
  4.   "test""react-app-rewired test"
  5.   "eject""react-scripts eject" 
  6. }, 

注意上面的start脚本内容: react-scripts start启动了前端app, go run main.go启动了后端api服务。

3. npm start或yarn start启动项目

开发模式,前后端项目不在一个端口,内置axios发起的ajax请求存在跨域。

解决跨域问题,要么反向代理,要么让后端做CORS。

这里我们采用反向代理的方式。

4. react开发模式设置proxy[2]

create-react-app允许你设置一个proxy,仅用于开发模式。

To tell the development server to proxy any unknown requests to your API server in development, add a proxy field to your package.json。

在package.json文件,设置要代理的后端地址 proxy:"localhost:8034"

,开发模式localhost:3000收到的未知请求将会由前端开发服务器代理转发。

引用链接

[1] create-react-app: https://github.com/facebook/create-react-app

 

[2] react开发模式设置proxy: https://coursework.vschool.io/setting-up-a-full-stack-react-application/

 

责任编辑:武晓燕 来源: 精益码农
相关推荐

2021-09-29 19:16:07

前端React配置

2021-09-26 06:43:08

快闪前端文件

2020-11-24 11:00:24

前端

2022-04-07 13:56:13

前端一键换肤

2020-11-26 13:24:35

小程序App流量

2012-01-10 15:35:44

金山快盘性能

2021-12-02 07:50:29

分支服务git worktre

2024-04-08 13:59:03

大模型Replicate

2015-02-09 15:25:52

换肤

2018-12-18 17:25:15

程序员

2021-07-15 16:58:45

数据库RDS Postgre阿里云

2020-10-30 09:17:34

游戏软件天天闪退报错

2010-10-19 20:40:21

手机安全一键快查网秦通讯

2020-06-30 15:10:58

命令行应用开发工具

2022-07-22 14:32:29

账号登录服务鸿蒙

2023-03-05 23:11:07

Go语言服务

2015-11-03 15:29:49

ONOS开放网络操作系统SDN

2021-10-19 05:49:15

Windows 11操作系统微软

2009-07-07 08:44:52

微软Windows 7新功能

2012-03-14 15:09:07

金山快盘一键还原
点赞
收藏

51CTO技术栈公众号