前端新手小白的React入坑指南

news2024/9/9 5:47:53

有个小伙伴跟我说,已经毕业了,开始实习了。但公司现在用的还是Vue,领导说是过段时间让他用React做项目,先自己学习起来。

我给他找了一些文档,顺便着呢,反正自己也写博客,自己也写一份吧,希望可以帮助需要的人们。

目录

1 项目安装

1.1 选定目录,启动终端

1.2 安装 create-react-app 命令

1.3 创建项目

1.4 查看目录文件

1.5 启动项目

2  一定会用到的第三方库 

2.1 js-tool-big-box

2.1.1 时间日期类 

2.1.2 网页store类 

2.1.3 事件类 

2.1.4 Number类 

2.1.5 String类

2.1.6 正则验证类

2.1.7 ajax类

2.1.8 data数据类

2.1.9 browser浏览器类

2.2 less或者sass预处理器

2.3 axios请求库

2.4 UI库


1 项目安装

1.1 选定目录,启动终端

你可以在自己电脑里,找一个文件夹,做为这次React项目练手的目录,然后在文件夹的url处,输入 “cmd” ,终端就弹出来了,然后还可以指定到目标目录下:

 

就是这个地方,输入“cmd”,然后回车,就可以唤起终端弹窗了。

1.2 安装 create-react-app 命令

执行以下命令,-g 表示全局安装一下

npm install -g create-react-app

1.3 创建项目

 比如说,我们要创建一个名字叫 js-tool-big-box-react 的项目,那么可以执行以下命令:

create-react-app js-tool-big-box-react

 然后终端就会进行安装,安装可能会稍微有点慢,耐心等待一下,安装完成后如下图所示:

1.4 查看目录文件

  • public目录下,存放着我们熟悉的html文件,以及一些静态所需文件;
  • src目录下,是项目开发的重要目录
  • 再往下 index.js 是入口文件
  • 你可以试着在App.js中做一下改动,然后查看网页效果 

1.5 启动项目

上面的图片中,我们用VSCode编辑器,打开了React项目,这个时候,在控制台输入命令:

npm start 

然后,项目会主动帮助我们唤起浏览器, http://localhost:3000/ 的地址,然后你就可以看到转动的React图标啦,项目就算安装完成了。

 

2  一定会用到的第三方库 

项目安装完成以后呢,就要着手项目开发了。正所谓工欲善其事,必先利其气。在项目开发之前,我们先说几个,前端项目开发中,一定会用到的第三方库。用了这几个第三方库呢,可以帮我们开发更高效

2.1 js-tool-big-box

先来个 js-tool-big-box 的学习地址,点我:js-tool-big-box工具库学习地址

js-tool-big-box几乎是前端开发项目,必用的一个npm库,他的功能丰富,使用便捷,可以让前端开发及其高效。目前他的功能包括但不限于:

2.1.1 时间日期类 
  1. 时间日期的转换;
  2. 更灵活的时间格式;
  3. 更个性化的时间获取;
  4. 某个时间点距离现在的时间段(更加详细的返回信息)
  5. 判断平年还是闰年;
  6. 某个月有多少天;
  7. 属相;
  8. 一年中的法定节假日;
  9. 获取全球重点城市时间;
2.1.2 网页store类 
  1. 获取url中的参数值
  2. 设置cookie;
  3. 获取cookie;
  4. 删除cookie;
  5. 设置localStorage;
  6. 获取localStorage
2.1.3 事件类 
  1. 防抖
  2. 节流
2.1.4 Number类 
  1.  千分位逗号分割;
  2. 判断是否大于0;
  3. 判断是否大于0的整数;
  4. 生成指定范围内的随机数;
  5. 生成指定位数的随机数;
  6. 数字转小写中文;
  7. 数字转大写中文;
2.1.5 String类
  1. 字符串反转;
  2. 横岗转小驼峰
  3. 横岗转大驼峰;
  4. 版本号比较;
  5. 获取一个字符串的字节长度;
  6. 生成uuid;
  7. 根据身份证号获取性别、年龄和出生日期;
  8. 字符串中间加特殊符号,隐藏关键信息;
  9. 字符串大小写字母转换;
2.1.6 正则验证类
  1.  邮箱格式验证;
  2. 手机号格式验证;
  3. url格式验证;
  4. 身份证号格式验证;
  5. IP地址格式验证;
  6. 邮政编码格式验证;
  7. 判断是否是Unicode字符;

  8. 检测密码强度值;

2.1.7 ajax类
  1. 发送jsonp请求;
  2. 下载文件纯功能版本;
  3. 下载文件,fetch + 下载功能版本;
2.1.8 data数据类
  1. 数组中获取随机个数的值;
  2. 复制文字到剪贴板;
  3. 数组去重;
  4. 获取更详细的数据类型;
  5. 数值型数组排序(正序和倒序);
  6. 对象型数组排序(正序和倒序)
2.1.9 browser浏览器类
  1. 判断当前是否手机端浏览器;
  2. 判断元素是否处于可视范围内;
  3. 获取当前浏览器向上滚动还是向下滚动,获取当前距离顶部和底部的距离;

  4. 打开全屏 和 关闭全屏;

  5. 获取浏览器userAgent以及详细信息;

2.2 less或者sass预处理器

传统的css编写方式比较低端,使用less或者sass这种预处理器,可以让CSS开发高效起来,非常推荐使用。

学习文档(Less 快速入门 | Less.js 中文文档 - Less 中文网 (bootcss.com))

2.3 axios请求库

一般项目都会涉及到与服务端交互,而这个时候你可以使用axios发送请求。

axios学习文档(axios中文文档|axios中文网 | axios (axios-js.com))

2.4 UI库

针对React,如果是C端开发呢,我们还是希望可以手写一些比较轻量级的UI库,但如果是B端呢,我们推荐Ant Design。

Ant Design学习文档(Ant Design - 一套企业级 UI 设计语言和 React 组件库)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1918654.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

共集电极放大器+共基极放大器+放大器参数总结+单片机(全局/静态/动态变量+LED点阵初识+点亮LED并显示图形)

2024-7-11,星期四,18:38,天气:雨,心情:晴。终于下雨了,感受到了久违的凉爽,没有什么特殊的事情发生,继续学习啦,加油加油!!&#xff0…

君子签电子合同推动企业人事管理变革,降本提效

在日益复杂的人力资源管理领域,合同签署与管理成为HR面临的一大挑战。面对庞大的合同量、繁琐的审批流程、频繁的岗位变动以及离职时的合同管理难题,传统方式已难以满足高效、安全、合规的需求。 君子签针对HR面临的挑战和需求,打造智能合同…

如何定量选择孔销基准?-DTAS来帮你!

在当今快速发展的工程领域,公差仿真的作用日渐重要,在公差仿真中,基准体系的选择对于最终结果更是至关重要。基准体系不同可能导致仿真过程中的参数计算、误差分析以及最终的工程设计都有所不同。基准体系作为评估和比较的参照,直…

专业模板,轻松打造个性化产品册

​在当今竞争激烈的市场环境中,如何让你的产品在众多竞品中脱颖而出,吸引消费者的目光?专业模板为您提供了解决方案。通过轻松打造个性化产品册,让您的产品焕发出独特的魅力,赢得消费者的青睐。本文将结合实际案例和数…

C++中的虚函数:深入探究多态性

目录 ​编辑 引言 虚函数基础 纯虚函数与抽象类 虚函数与多态 虚析构函数 结论 引言 在C中,虚函数是实现多态性的关键机制,它允许我们编写更为灵活和可扩展的代码。通过虚函数,派生类可以提供不同的实现,而基类指针或引用…

面对频繁紧急修复,测试人员5大应对技巧!

频繁的紧急修复问题,经常会过多占用测试时间,影响正常测试周期和回归测试的完整性,不利于测试效率和质量的提高。因此为了更高效地处理此问题,测试人员可以采取以下5大策略来应对,以减少此类问题的发生并提高工作效率。…

王老师 linux c++ 通信架构 笔记(二)配置服务器为固定的 ip 地址、远程登录、安装 gcc g++ 与虚拟机文件夹共享

(7)本条目开始配置 linux 的固定 ip 地址,以作为服务器使用: 首先解释 linux 的网口编号: linux 命令 cd : change directory 改变目录。 ls : list 列出某目录下的文件 根目录文件名 / etc &a…

链接服务器“XX”的OLEDB访问接口“MSOLEDBSQL”返回了消息“登录超时已过期” 解决方法

目录 1. 问题所示2. 原理分析3. 解决方法1. 问题所示 出现如下问题: 与链接服务器的测试连接失败。执行Transact-SQL 语句或批处理时发生了异常。命名管道提供程序:无法打开与SQL SERVER的链接[53]链接服务器“XX”的OLEDB访问接口“MSOLEDBSQL”返回了消息“登录超时已过期…

CV06_Canny边缘检测算法和python实现

1.1简介 Canny边缘检测算法是计算机视觉和图像处理领域中一种广泛应用的边缘检测技术,由约翰F坎尼(John F. Canny)于1986年提出。它是基于多级处理的边缘检测方法,旨在实现以下三个优化目标: 好的检测:尽…

如何录制屏幕视频?4款软件,轻松录屏

在数字化飞速发展的时代,如何录制屏幕视频已经成为我们工作、学习和娱乐中不可省略的一个重要问题。无论是制作教学教程还是录制游戏视频等,屏幕视频录制都为我们提供了极大的便利。今天,就让我们一起探索如何录制屏幕视频的精彩方式&#xf…

记录文字视差背景学习

效果图 文字背景会随鼠标上下移动变成红色或透明 html <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><titl…

Hydra

Intro Hydra是一个用来动态创建配置的python开源框架&#xff0c;使做研究和复杂的应用更便利&#xff0c;配置信息可以通过配置文件或者运行参数来覆盖。Hydra的名字来源于其可以运行多个相似任务&#xff0c;就像Hydra&#xff08;九头蛇&#xff09;有多个头一样。 Run 安…

初学51单片机之UART串口通信

CSDN其他博主的博文&#xff08;自用&#xff09;嵌入式学习笔记9-51单片机UART串口通信_51uart串口通讯-CSDN博客 CSDN其他博主的博文写的蛮好&#xff0c;如果你想了解51单片机UART串口可以点进去看看&#xff1a; UART全称Universal Asynchronous Receiver/Transmitter即通…

agents 分类

一、分类 自动agent、半自动agent、领域、自定义sop和支持人为干预的agent。 先泼个冷水&#xff0c;目前这些agent项目都是实验品&#xff0c;发展还没有做知识库问答相关开源项目那么成熟&#xff0c; 二、全自动agent autoGPT、loopGPT、babyAGI 全自动agent就是人类不可…

设计模式8-桥模式

设计模式8-Bridge 桥模式 由来与目的模式定义结构代码推导1. 类和接口的定义2. 平台实现3. 业务抽象4. 使用示例总结1. 类数量过多&#xff0c;复杂度高2. 代码重复3. 不符合单一职责原则4. 缺乏扩展性改进后的设计1. 抽象和实现分离&#xff08;桥接模式&#xff09;2. 抽象类…

Python爬虫:BeautifulSoup的基本使用方法!

1.简介 Beautiful Soup提供一些简单的、python式的函数用来处理导航、搜索、修改分析“标签树”等功能。它是一个工具箱&#xff0c;通过解析文档为用户提供需要抓取的数据&#xff0c;因为简单&#xff0c;所以不需要多少代码就可以写出一个完整的应用程序。 Beautiful Soup…

一款面向程序员群体的AI问答产品火了!主打专业、正确率保障,消灭AI回答不可靠的问题

一直以来&#xff0c;无论是GPT、Claude还有国内的AI对话产品&#xff0c;都一直被诟病“AI回答不可靠”&#xff0c;尤其是在程序员这类对AI回答的可靠性要求极高的场景&#xff08;毕竟AI给代码里埋个bug&#xff0c;背锅的还是程序员&#xff09;。 而且当AI给的代码不可靠…

Androd 12 (MTK)修改屏幕物理分辨率Physical Size

1.需求说明 Android目前显示分辨率为480*800&#xff0c;立项表中像素为720*1280。请修改屏幕分辨率到指定大小。 2.思路分析 如果从手机修改对应的分辨率&#xff0c;必须自上而下的进行修改分为两个层面进行修改。 1.驱动底层 2.软件上层 3.结局方法与相关说明 查看当…

Vue打包文件dist放在SpringBoot项目下运行(正确实现全过程)(下)

在上一篇中&#xff0c;实现了Vue打包文件dist放在SpringBoot项目下运行。 Vue打包文件dist放在SpringBoot项目下运行&#xff08;正确实现全过程&#xff09;&#xff08;上&#xff09; 问题 路由刷新会产生404的问题。 原因 vue开发的应用&#xff0c;采用的是SPA单页…

c语言的简易教法—— 函数递归

文章目录 一、什么是递归&#xff1f;1.1递归的思想1.2递归的限制条件 二、递归案例2.1 案例1&#xff1a;求n的阶层2.1.1分析2.1.2 递归函数&#xff08;Fact&#xff09;的代码实现2.1.3 测试&#xff1a;main函数实现2.1.4 运行结果和画图推演2.1.5 扩展&#xff1a;迭代方法…