当前位置: 首页 > news >正文

使用 create-react-app 脚手架搭建React项目

官网

1、安装脚手架:npm install -g create-react-app

2、查看版本:create-react-app -V

!!!注意 Node版本必须是14以上,不然会报以下错误。

在这里插入图片描述

3、创建react项目(项目名不能包含大写字母):npx create-react-app <项目名称>

  • npx 是 npm 5.2+ 附带的 package 运行工具。
  • create-react-app 创建的项目默认无法看到 webpack 的相关配置,如果想要配置 webpack,需要执行 npm run eject命令

4、运行 react 项目:npm start

5、react中使用video标签显示本地视频不生效问题:

使用require进行引入路径即可。

<video className="videoStyle" src={require('./video/3.mp4')} autoPlay muted loop></video>

6、重写脚手架的配置(参考链接):

  • tips: react-app-rewired@2.x 版本需要搭配 customize-cra 使用。
  • 安装: npm i react-app-rewired customize-cra --save-dev
  • 在根目录下新建文件config-overrides.js,写入代码:
    module.exports = function override(config, env) {return config
    }
    
  • 重写package.json中的配置:
    在这里插入图片描述

7、react项目本地代理:

  • create-react-app脚手架若在2.0版本以下
    • 直接在package.json中配置:
      "proxy":{"/api":{"target":"http://127.0.0.1:3000",  # 代理地址"changeOrigin": true,  # 是否允许跨域"pathRewrite": {  # 重写路径"^/api": "/"},}
      }
      
  • create-react-app脚手架若在2.0版本以上配置一个代理:
    • 直接在package.json中配置:
      "proxy": 'http://127.0.0.1:3000' # 只能是字符串
      
  • create-react-app脚手架若在2.0版本以上配置多个代理:
    • 安装 http-proxy-middlewarenpm i http-proxy-middleware --save-dev
    • 在 src 的根目录下新建文件 setupProxy.js(文件名称固定,不能更改),写入代码:
      // http-proxy-middleware V1.0版本以下使用:const proxy = require('http-proxy-middleware')module.exports = function(app) {app.use(proxy('/api', {target: 'http://localhost:3000/',changeOrigin: true,// pathRewrite: {//   '^/api': ''// }}))}// http-proxy-middleware V1.0版本以上使用:const { createProxyMiddleware } = require('http-proxy-middleware');module.exports = function (app) {app.use(createProxyMiddleware('/api', {target: 'http://127.0.0.1:3000',secure: false,    # 指定Cookies能否被用户读取changeOrigin: true,pathRewrite: {"^/api": "/"},}),createProxyMiddleware('/api1', {target: 'http://127.0.0.1:3001',secure: false,    # 指定Cookies能否被用户读取changeOrigin: true,pathRewrite: {"^/api1": "/"},}));};
    

8、配置多环境打包(官网文档):

  • 安装 dotenv-cli :npm i dotenv-cli -D
  • 新建环境文件,并且写入路径:路径必须以 REACT_APP 开头在这里插入图片描述
  • 修改 package.json 中的 scripts来指定环境:
    在这里插入图片描述
  • 执行 npm run build:dev 即可
  • index.html文件中使用:%REACT_APP_URL_API%
  • js/jsx文件 中使用:process.env.REACT_APP_URL_API

9、打包上线后,静态资源css和js报404:

  • 需要在package.json文件中添加"homepage": "./"进行重新打包即可。
    在这里插入图片描述
http://www.lryc.cn/news/34919.html

相关文章:

  • inquirerjs
  • [数据库]内置函数
  • shell基本知识
  • Http长连接和短连接
  • [SQL Statements] 基本的SQL知识 之DDL针对表结构和表空间的基本操作
  • Git版本控制工具(详解)
  • 408考研计算机之计算机组成与设计——知识点及其做题经验篇目2:指令系统
  • Java语法中的方法引用::是个什么鬼?
  • 【使用vue init和vue create的区别以及搭建vue项目的教程】
  • 二、HTTP协议02
  • 免费Api接口汇总(亲测可用,可写项目)
  • 12.并发编程
  • C/C++指针与数组(一)
  • Android使用移动智能终端补充设备标识获取OAID
  • 极目智能与锐算科技达成战略合作,4D毫米波成像雷达助力智能驾驶落地
  • OpenCV基础(一)
  • pinia 的使用(笔记)
  • DolphinDB 机器学习在物联网行业的应用:实时数据异常率预警
  • 新建vite+vue3+ts项目,以及解决过程中遇到的问题
  • pyppeteer中文文档
  • (二十四)操作系统-吸烟者问题
  • ReentranLock(可重入锁)
  • Kafka 入门 (一)
  • linux内核开发入门二(内核KO模块介绍、开发流程以及注意事项)
  • 设计模式(十七)----行为型模式之模板方法模式
  • 【嵌入式Linux内核驱动】01_内核模块
  • Spring——数据源对象管理和Spring加载properties文件
  • Zeek安装、使用与压力测试
  • 【javaEE初阶】第三节.多线程 (进阶篇 ) 死锁
  • 基于密集连接的轻量级卷积神经网络,用于使用边云架构的露天煤矿服务识别