前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >react配置生产环境和测试环境地址

react配置生产环境和测试环境地址

作者头像
何处锦绣不灰堆
发布2021-05-06 16:37:45
2.6K0
发布2021-05-06 16:37:45
举报
文章被收录于专栏:农历七月廿一农历七月廿一
写在前面

之前一直写关于vue的文章,经常看我文章的可能从上篇文章就知道了我已经不写vue了,以后就写react了,会持续更新,今天说一下我搭建框架的时候配置不同环境的步骤,大家可以借鉴以下,也可以自己搞一下!

在项目根目录创建两个环境文件
  • .env.development
  • .env.production
文件内容
  • .env.developemnt
代码语言:javascript
复制
REACT_APP_BASE_URL = 'https://test.com'
REACT_APP_ENV = 'development'
  • .env.production
代码语言:javascript
复制
REACT_APP_BASE_URL = 'https://production.com'
REACT_APP_ENV = 'production'
配置package.json[scripts选项中添加如下代码]
代码语言:javascript
复制
    "build:prod": "cross-env REACT_APP_ENV=production react-app-rewired build",
    "build:dev": "cross-env REACT_APP_ENV=development react-app-rewired build",
在这里插入图片描述
在这里插入图片描述
安装cross-env插件,进行识别环境地址
  • 使用npm安装
代码语言:javascript
复制
npm i -D cross-env
  • 使用yarn安装
代码语言:javascript
复制
yarn add cross-env

PS:如果安装失败可以删除本地的node_modules文件,清除缓存以后继续安装,如果还是安装失败,看具体的报错信息,无非以下几种

  • 文件夹权限不够 使用sudo进行安装
  • 代理有问题,找一个淘宝镜像进行安装
  • 命令输入错误,复制上面的命令进行安装
  • 还有别的错误的话,就截图到评论区,看到会回复
使用

在你统一配置接口请求地址的js文件中进行获取当前的接口地址

代码语言:javascript
复制
const baseUrl = process.env.REACT_APP_ENV === "production" ? process.env.REACT_APP_BASE_URL: "http://test.com";

PS: 当然这里你可以自己配置很多的地址在里面,自己执行的时候找到对应的地址信息即可,如果一个测试环境中有很多测试地址,可以直接使用一个对象进行接收,获取的时候不使用三元运算符,直接使用if 判断当前的REACT_APP_ENV的值,或者使用switch:case结构也可以实现。

注意

这里的.env.developemnt和.env.production文件里面的变量必须是REACT_APP_开头的变量,不然是不被解析的,另外不可以直接使用NODE_ENV这个变量,不会被解析!

打包部署
  • 生产环境:
代码语言:javascript
复制
yarn build:prod
  • 测试环境:
代码语言:javascript
复制
yarn build:dev
本地测试
  • serve
代码语言:javascript
复制
serve ./build/
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2021-04-29 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 写在前面
  • 在项目根目录创建两个环境文件
  • 文件内容
  • 配置package.json[scripts选项中添加如下代码]
  • 安装cross-env插件,进行识别环境地址
  • 使用
  • 注意
  • 打包部署
  • 本地测试
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档