[react]5、React脚手架

server/2024/12/27 3:46:55/

1、前端脚手架

1、Vue的脚手架:vue-cli
2、Angular的脚手架:angular-cli
3、React的脚手架:create-react-app
目前这些脚手架都是使用node编写的,并且都是基于webpack的,需要在电脑上安装node环境
脚手架的作用是帮助我们生成一个通用的目录结构,并且已经将我们所需的工程环境配置好。

2、node包管理工具

1、npm
全称 Node Package Manager,即“node包管理器”,在node安装时自动安装npm工具
作用:能够帮助我们管理一下依赖的工具包(比如react、react-dom、axios、babel、webpack等等)。
2、yarn
Yarn是由Facebook、Google、Exponent 和 Tilde 联合推出了一个新的 JS 包管理工具;
Yarn 是为了弥补 npm 的一些缺陷而出现的;
React脚手架默认也是使用yarn;
yarn安装npm install -g yarn
3、cnpm
使用国内镜像的npm
npm install -g cnpm --registry=https://registry.npm.taobao.org
4、react脚手架
npm install -g create-react-app

3、创建React项目

1、使用命令创建项目
create-react-app 项目名称 (项目名称小写)
2、工程目录介绍
README.md // readm说明文档
package.json // 对整个应用程序的描述:包括应用名称、版本号、一些依赖、以及项目的启动、打包等等
📂 public:
favicon.icon:浏览器页面tab图标
index.html:页面入口
robots.txt:设置爬虫规则,规定网站是否可以被爬虫
manifest.js:PWA
📂src:
App.css:当前app的样式文件
App.js:当前页面展示的内容
App.test.js:测试用例的书写
index.css:全局样式
index.js:当前React代码入口
logo.svg:动画图片
setupTest.js:测试的初始化,导入包
reportWebVitals.js:提供各种质量信号的统一指南,可以获取三个关键指标(CLS、FID、LCP)和两个辅助指标(FCP、TTFB)。

react目录

4、PWA

PWA全称Progressive Web App,即渐进式WEB应用
1、一个 PWA 应用首先是一个网页, 可以通过 Web 技术编写出一个网页应用
2、随后添加上 App Manifest 来实现 PWA 的安装和离线等功能,这种Web存在的形式,称之为Web App
3、可以添加至主屏幕,点击主屏幕图标可以实现启动动画以及隐藏地址栏
4、实现离线缓存功能,即使用户手机没有网络,依然可以使用一些离线功能
5、实现了消息推送

5、webpack

1、概念:webpack 是一个现代 JavaScript 应用程序的静态模块打包器(module bundler);
2、当 webpack 处理应用程序时,它会递归地构建一个依赖关系图(dependency graph),其中包含应用程序需要的每个模块, 然后将所有这些模块打包成一个或多个 bundle;
3、React脚手架将webpack相关的配置隐藏起来了,如果查看需要使用package.json文件中的一个脚本:"eject":"react-scripts eject",这个操作不可逆,命令格式如下
yarn eject

webpack打包过程

执行命令后生成的文件夹目录
config文件夹

webpack.config.js
配置内容:loader、plugin
entry:为入口,output:为出口 ...
4、通过脚手架创建的工程需要通过import引入node_modules中相关代码文件,node_modules中相关代码文件都是通过模块化 module.exports导出使用,
代码中只用的导出和导入方式使用 import和export
ES6语法相关导入导出代码如下

// utils.js
export default function sum(a, b) {return a + b;
}
export function sum2(a, b) {return a + b;
}
// index.js 导入方式的区别
import sum, { sum2 } from './utils'


喜欢的朋友记得点赞、收藏、关注哦!!!


http://www.ppmy.cn/server/153510.html

相关文章

AIDD - 基于分子帧的表征学习方法概述

AIDD - 基于分子帧的表征学习方法概述 今天给大家讲一篇2024年8月在nature communications上发表的一篇关于分子表示学习方法的文章。传统的基于分子序列、分子图等方法无法捕捉分子的三维结构信息,因此作者提出一种自监督的分子视频预训练方法VideoMol。该方法有效…

什么是Web极简架构

极其简单Web架构(radically simple web)是一个面向初创企业和小型企业的 Web 应用程序蓝图:何使用 模块化单体Modular Monoliths、SSR、微前端Micro Frontends、HTMX 和 Tailwind CSS 跨多个领域团队构建 Web 应用程序。 本文为运行或构建跨…

计算机视觉目标检测-1

文章目录 摘要Abstract1.目标检测任务描述1.1 目标检测分类算法1.2 目标定位的简单实现思路1.2.1 回归位置 2.R-CNN2.1 目标检测-Overfeat模型2.1.1 滑动窗口 2.2 目标检测-RCNN模型2.2.1 非极大抑制(NMS) 2.3 目标检测评价指标 3.SPPNet3.1 spatial pyr…

git命令恢复/还原某个文件、删除远程仓库中的文件

有时刚创建的远程仓库,可能无意中把一些没用的文件上传到仓库,本文介绍一下怎么删除这些文件。 一、git命令恢复某个文件 第一步:拉取最新代码 git pull 第二步: 查看git 修改的文件状态 git status 第三步:查看…

鸿蒙生态崛起:开发者机遇与挑战并存

💓 博客主页:倔强的石头的CSDN主页 📝Gitee主页:倔强的石头的gitee主页 ⏩ 文章专栏:《热点时事》 期待您的关注 目录 引言 一、何为鸿蒙生态? 二、在鸿蒙生态下开发时遇到的挑战 三、对于鸿蒙生态未…

Linux运维常见命令

vi/vim快捷键使用 1)拷贝当前行 yy ,拷贝当前行向下的5行 5yy,并粘贴(输入p)。 2)删除当前行 dd ,删除当前行向下的5行5dd 3)在文件中查找某个单词 [命令行下 /关键字,回车查找 ,输入n就是查找下一个 ] 4)设置文件的行号&…

VLM--CLIP作分类任务的损失函数

info_nce_loss 这个是clip作对比学习的损失函数 各个博客上都有详细介绍了,我这里就不赘述 def info_nce_loss(image_features, text_features,logit_scale,labels, temperature0.07):batch_size image_features.shape[0]image_features image_features / image…

(12)YOLOv10算法基本原理

一、YOLOv10的介绍 目前,由清华大学开源的最新的 YOLOv10,包括从n到x各种型号的模型,其中 YOLOv10n 最小,YOLOv10x 最大,以满足 不同应用场景。 二、YOLOv10的主要贡献 一致的双重分配策略(Consistent …