react自学(6) 部署到tomcat中

1.设置项目名

在package.json文件配置

go 复制代码
"homepage": "/myapp"

2.设置Router类型

说明:由于本文是写部署tomcat,因此使用HashRouter类型,不然会出现空白;如果使用springboot或在apche/nginx,则可以使用BrowserRouter。

html 复制代码
    <HashRouter>
      <div>
        <Route path="/" exact render={(props) => (
          <></>
        )} />
      </div>
    </HashRouter>

3.使用.env设置自定义的变量

在根目录下(src的同级),添加.env文件

如想设置变量ROOT_NAME=myapp

在.env中,自定义变量的名称,必须为REACT_APP_开头

复制代码
REACT_APP_ROOT_NAME=myapp

4.在代码中获取变量

typescript 复制代码
console.log(process.env.REACT_APP_ROOT_NAME)
console.log(process.env.PUBLIC_URL)

说明:获取第一步设置的项目名则使用process.env.REACT_APP_ROOT_NAMEprocess.env.PUBLIC_URL

5.多环境配置打包命令

环境变量文件命名规则:.env.[环境名称]

如:

本地环境配置文件:.env

开发环境配置文件:.env.development

生产环境配置文件:.env.production

json 复制代码
{
  "scripts": {
    "build": "react-scripts build",// 本地环境
    "build-dev": "REACT_APP_ENV=development react-scripts build", // 开发环境
    "build-prod": "REACT_APP_ENV=production react-scripts build", // 生产环境
  }
}

对应执行打包命令:

bash 复制代码
npm run build
npm run build-dev
npm run build-prod
相关推荐
zzzzzz31020 分钟前
别急着把动效组件搬进页面:从 react-bits 看 React 动效库该怎么评估
前端·react.js·开源
研☆香12 小时前
聊一聊前端的常见字 关键字
开发语言·前端·javascript
日光倾14 小时前
TypeScript 随手记 —— 1
前端·javascript·typescript
Buke..16 小时前
【APP 逆向】哔哩哔哩 sign 参数逆向(下):OLLVM 混淆还原 sign 算法
java·javascript·爬虫·python·算法
竹枝溪17 小时前
Tomcat与Servlet全套小白教程
java·servlet·tomcat·cookie·filter·session·listener
前端炒粉18 小时前
长会话虚拟滚动与渲染优化
前端·javascript·vue.js
谙忆102418 小时前
图片裁剪总是跑偏?用 object-fit、object-position 和真实像素把坐标对齐
javascript·css·图像识别
花归去19 小时前
ant的a-table更改表格的高度
前端·javascript·html
sibylyue19 小时前
基于 Vben Admin 框架的 Vue 3 前端项目配置文件及常用命令
前端·javascript·vue.js
choumou_M19 小时前
SpringBoot_2:MyBatis-Generator插件使用教程
spring boot·tomcat·mybatis