react脚手架、使用步骤、在react脚手架里做项目的步骤、反向代理

2023-11-09

脚手架

facebook的官方脚手架

1、安装 create-react-app (CRA)

npm install create-react-app -g
yarn global add create-react-app

安装yarn
方法一:使用安装包安装

[官方下载安装包](https://yarnpkg.com/zh-Hans/docs/install)
安装完毕后,一定要配置环境变量。

方法二:使用npm安装

npm i yarn -g

-i:install 

-g:全局安装(global),使用 -g 或 --global

输入yarn -version 可以看到版本号,说明安装成功了。我们就可以在项目中像使用npm一样使用yarn了。

2、用脚手架创建 react项目

create-react-app 项目名称
如:create-react-app reactapp01
注意:项目名称不能有大写字母。

3、 启动项目:

npm start | yarn start

4、目录解析:
4.1)第一级目录
在这里插入图片描述

node_modules:是项目依赖的模块

src:是程序员写代码的地方,src是source的缩写,表示源代码

public: 静态资源。

4.2)展开目录:

  • Public:
index.html:是html网页,是个容器。这个文件千万不敢删除,也不能改名。

只有Public目录下的文件才会被index.html文件引用,这是静态资源,index.html不会引用
src目录下的文件

manifest.json:生成一个网页的桌面快捷方式时,会以这个文件中的内容作为图标和文字
的显示内容
  • src:
 src目录是源代码,webpack只会打包这个目录下的文件,所以,把需要打包的文件
 都放在这个目录下。

   Index.js:是主js文件,千万不能删除,也不能改名

   Index.css:是index.js引入的css文件(也是模块,webpack会把css也打包成模块)  千万不敢删除,也不能改名

   App.js:是一个组件示例(模块),在 index.js里会引入这个组件。我们自己需要写组件时,只需要复制App.js文件即可。

  App.css:是App.js文件引入的css文件(也是模块,webpack会打包)。

  Logo.svg:是图片

​    registerServiceWorker.js:支持离线访问,所以用起来和原生app的体验很接近,只有打包生成线上版本的react项目时,registerServiceWorker.js才会有效。服务器必须采用https协议

5、打包

npm run build | yarn build

6)、如果要解构出配置文件:

npm run eject | yarn eject 解构出所有的配置文件 可选

7、如果需要调试,安装react-dev-tools工具

  1. 先进入到https://github.com/facebook/react网址

  2. 通过git clone https://github.com/facebook/react-devtools.git下载到本地(或者直接点击下载)

  3. 下载之后进入到react-devtools目录下,用npm安装依赖
    npm --registry https://registry.npm.taobao.org install

  4. 然后在npm run build:extension:chrome

环境配置

1、把配置解构
npm run eject | yarn eject
  
2、修改端口
//修改script/start.js
const DEFAULT_PORT = parseInt(process.env.PORT, 10) || 3001;

3、去除eslint 警告
//config/webpack.config.js
//注释关于eslint的导入和rules规则(编辑器内部得报错、波浪线)

资源限制

  • 本地资源导入(import) 不可以导入src之外的包

  • 图片声音等静态资源的路径,和vue脚手架是同样的(图片路径是静态的,文件放在src/assets下,图片路径是动态的,放在public下)。

在脚手架里做项目的步骤

1、创建目录

​ 在src目录下创建以下文件夹:

  • assets :静态资源文件夹

  • components:组件文件夹

    ​ /components/a组件/ a.js 和 a.css

  • pages:页面文件夹

  • styles:样式文件夹

2、图片文件夹

1).在public里放图片。

​ 把图片放到public文件夹中 直接使用图片名使用(使用绝对路径(img src="/img/image.jpg" />)),这样的图片不会打包

2).使用require引用,require(‘图片的相对路径’),Require中只能使用字符串不能使用变量,这样的图片会打包。如:

<img src={require("…/…/assets/img/banner04.jpg").default} />

反向代理:

https://create-react-app.dev/docs/proxying-api-requests-in-development/

1、安装模块(http-proxy-middleware):

npm install http-proxy-middleware --save-dev
yarn add http-proxy-middleware -D

2、在项目源代码的根目录创建文件: src/setupProxy.js

const { createProxyMiddleware } = require('http-proxy-middleware');

module.exports = function(app) {
  console.log("proxy");
  app.use(
    '/api',
    createProxyMiddleware({
      target: 'http://xmb8nf.natappfree.cc',
      changeOrigin: true,
      // 重写接口路由
      pathRewrite: {
        '^/api': '' 
      }
    })
  );
};

3、重启服务器

yarn start

第三方脚手架

yeomen/dva/umi

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

react脚手架、使用步骤、在react脚手架里做项目的步骤、反向代理 的相关文章

随机推荐

  • SpringMVC:从入门到精通,7篇系列篇带你全面掌握--四.5分钟搞定文件上传与下载

    Welcome Huihui s Code World 接下来看看由辉辉所写的关于SpringMVC的相关操作吧 需要添加的依赖
  • Android Studio安装及环境配置教程

    前言 首先需要确定好电脑是否有安装java环境 即是否安装有JDK 验证方法 直接电脑桌面win R 输入cmd 然后在黑窗口中分别输入java javac javadoc java version enter键 注意是输入一个指令按一次e
  • 【前端|CSS系列第4篇】面试官:你了解居中布局吗?

    欢迎来到前端CSS系列的第4篇教程 如果你正在寻找一种简单而又强大的前端技术 以使你的网页和应用程序看起来更加专业和美观 那么居中布局绝对是你不能错过的重要知识 在前端开发中 实现居中布局是一项必备技能 无论是垂直居中 水平居中 还是同时实
  • python函数中的可变默认值

    In 27 def f a a append 5 print a In 28 P f 5 In 29 L f 5 5 函数多次调用竟然使用的用一个参数对象 请注意
  • 大数据数据库:MPP vs MapReduce

    这些年大数据概念已经成为IT界的热门 我们经常也会在新闻和报纸中看到 大数据概念中最为关键的技术就是数据库管理系统 伴随着hadoop和MapReduce技术的流行 大数据的数据库中Hive和Spark等新型数据库脱颖而出 而另一个技术流派
  • javafx服务器监控系统,用于服务器端图像生成的JavaFX

    这可能听起来很奇怪 但我想使用JavaFX在服务器端生成我的图表图像 因为JavaFX具有很好的canvas API来执行图像转换连接和定位 特别是我有一个spring MVC服务来生成我的图表作为图像 主要问题是如何从方便的Spring
  • 骚操作:c++如何用goto便捷地写人工栈?

    在如今所有NOI系列赛事已经开全栈的时势下 人工栈已经离我们很远很远 所以这博客就是我弄着玩的 首先我们要清楚的是c 的goto写法 loop goto loop 在运行到goto时 就会跳到对应的标记 标记在goto的前后都可以 然而你试
  • 以太坊的状态树 Merkle Patricia Tree

    Merkle Patricia Tree Merkle树 https www cnblogs com fengzhiwu p 5524324 html Merkle Tree 通常也被称作Hash Tree 顾名思义 就是存储hash值的一
  • 编写python代码需要注意什么,Python学习笔记三,编程时需要注意的常犯错误事项...

    在进入正式学习python编程之前 我们一起来了解一下 在python学习过程需要注意的一些常犯错误的事项 Python运行时默认的输入法 在使用python时 电脑的输入法默认状态一定要调整为英文状态 除了在输入汉字的时候将输入法调整为中
  • 简单几句话总结Unicode,UTF-8和UTF-16

    概念 先说一说基本的概念 这包括什么是Unicode 什么是UTF 8 什么是UTF 16 Unicode UTF 8 UTF 16完整的说明请参考Wiki Unicode UTF 8 UTF 16 用比较简单的话来说就是 Unicode定
  • Flink实战: 窗口TopN分析与实现

    TopN 的需求场景不管是在离线计算还是实时计算都是比较常见的 例如电商中计算热门销售商品 广告计算中点击数前N的广告 搜索中计算搜索次数前N的搜索词 topN又分为全局topN 分组topN 比喻说热门销售商品可以直接按照各个商品的销售总
  • 【K8S系列】5-K8s实战-Controllers

    K8s控制器 Controllers 官网 https kubernetes io docs concepts workloads controllers 控制器的作用是用来统一发布Pod的对象 通过yaml文件定义 运行后可以进行查看 变
  • Java面试题新二(转载)

    JAVA基础 JAVA中的几种基本类型 各占用多少字节 下图单位是bit 非字节 1B 8bit String能被继承吗 为什么 不可以 因为String类有final修饰符 而final修饰的类是不能被继承的 实现细节不允许改变 平常我们
  • 2020年aws认证一些经验 saa

    2020年2月过的aws saa考试 1 报名网址 https www aws training Certification 2 费用 150美金 需要一个visa的信用卡 3 证书有效期3年 4 考试名字要与信用卡一致 考试时要看信用卡和
  • 【机器学习基础】机器学习中必知必会的 3 种特征选取方法!

    随着深度学习的蓬勃发展 越来越多的小伙伴开始尝试搭建深层神经网络应用于工作场景中 认为只需要把数据放入模型中 调优模型参数就可以让模型利用自身机制来选择重要特征 输出较好的数据结果 在现实工作场景中 受限制数据和时间 这样的做法其实并不可取
  • PHP微信获取小程序手机号失败 -41003

    使用官方的PHP版demo解密 调用接口后返回错误码 41003 并未成功解密出想要的信息 以为是encryptedData 数据传输的时候 号会自动转换为空格 但是不是 打印了一下解密后的iv 和 encryptedData 发现是乱码
  • matlab开根号_matlab基本计算

    这里介绍的内容是使用MATLAB进行基本的数学计算 完成的是类似计算机计算数学算式的功能 这篇文章基本可以帮助你学会所有基本的matlab计算方法 1 基本计算 MATLAB中的基本的运算符号为 四则运算规则和平时使用的计算器相同 使用MA
  • C++语句 与简单方法

    语句 在c primer plus 第二章中除了讲到输出流 还提到了更多的语句 书中称之为Statement 简单看来语句有申明语句 赋值语句 调用函数的语句 下面看书上的一组例子 include
  • 锁的四种状态及升级过程

    锁的四种状态与锁升级过程 图文详解 一 前言 锁的状态总共有四种 级别由低到高依次为 无锁 偏向锁 轻量级锁 重量级锁 这四种锁状态分别代表什么 为什么会有锁升级 其实在 JDK 1 6之前 synchronized 还是一个重量级锁 是一
  • react脚手架、使用步骤、在react脚手架里做项目的步骤、反向代理

    脚手架 facebook的官方脚手架 1 安装 create react app CRA npm install create react app g yarn global add create react app 安装yarn 方法一