1. 项目文件介绍

react-dome

一、简介

这是一个基于reacthook开发的前端页面

二、用到的技术栈

1. reacthook

用途:React Hooks 是一种在函数组件中添加状态和其他 React 特性的方式。它们允许开发者在不编写类的情况下使用状态和其他 React 功能,从而简化了组件的编写过程。常用的 Hooks 包括 useState(用于添加和管理状态)、useEffect(用于执行副作用操作)、useContext(用于访问 React 的 Context)等。

优点:使代码更简洁、可读性更高,提高了组件的可测试性和重用性。

2. typescript

用途:TypeScript 是 JavaScript 的一个超集,添加了可选的静态类型和基于类的面向对象编程。它扩展了 JavaScript 的功能,使代码更加健壮、易于维护和开发。

优点:提供了类型系统,有助于在编译时捕获错误,提高代码质量和开发效率。

3. vite

用途:Vite 是一种新型的前端构建工具,旨在提供更快的开发服务器启动时间和更快的热模块替换(HMR)。它使用原生的 ES 模块来实现开发服务器,并支持代码拆分、Tree-shaking 和其他优化技术。

优点:显著提高了开发效率,优化了生产构建,提供了灵活的插件系统和配置选项。

4. antd

用途:Ant Design 是一个基于 React 的 UI 设计语言和 React 组件库,主要用于研发企业级中后台产品。它提供了一套高质量的 React 组件,帮助开发者快速构建美观、高效的 Web 应用。

优点:拥有丰富的组件和强大的定制化能力,能够满足复杂的企业级应用需求。

5. echarts

用途:ECharts 是一个使用 JavaScript 实现的开源可视化库,可以流畅地运行在 PC 和移动设备上,兼容当前绝大多数浏览器(IE8/9/10/11, Chrome, Firefox, Safari等)。它提供了丰富的图表类型和交互功能,让开发者可以轻松创建各种精美的数据可视化图表。

优点:图表类型丰富、配置灵活、性能优异,是数据可视化的理想选择。

6. redux

用途:Redux 是一个用于 JavaScript 应用的状态容器,提供可预测化的状态管理。它适用于中大型项目,帮助开发者进行统一的数据管理和维护。

优点:提供了单一的数据源和清晰的数据流,使得应用的状态管理更加简单和可预测。

7. react-router-dom

用途:react-router-dom 是一个用于构建单页应用的 React 路由库。它允许开发者在 React 应用中实现客户端路由功能,即根据 URL 的变化加载不同的组件。

优点:简化了路由管理,提高了应用的导航性能和用户体验。

8. axios

用途:Axios 是一个基于 promise 的 HTTP 客户端,用于浏览器和 node.js。它可以轻松地从浏览器中创建 XMLHttpRequests,也可以从 node.js 创建 http 请求。

优点:支持 Promise API,拦截请求和响应,转换请求数据和响应数据,取消请求,自动转换 JSON 数据等。

9. prettier

用途:Prettier 是一个代码格式化工具,支持多种语言,包括 JavaScript、TypeScript、CSS 等。它能够自动调整代码格式,使其符合一定的风格规范。

优点:减少了代码风格差异带来的问题,提高了代码的可读性和一致性。

10. eslint

用途:ESLint 是一个静态代码分析工具,用于识别和报告 JavaScript 代码中的模式。它可以帮助开发者避免错误,保持代码风格一致,并促进最佳实践。

优点:提高了代码质量,减少了运行时错误,促进了团队之间的协作。

11. react-i18next

用途:react-i18next 是一个用于 React 的国际化(i18n)解决方案,它基于 i18next 库。它允许开发者在 React 应用中实现多语言支持,使得应用能够根据不同的语言环境展示相应的内容。

优点:简化了国际化过程,提高了应用的可访问性和用户体验。

12. Mockjs

用途:Mockjs 是一个模拟数据生成器,用于在前端开发中拦截 Ajax 请求,并返回模拟的响应数据。它可以帮助开发者在后端接口尚未完成时,独立进行前端开发。

优点:提高了开发效率,减少了前后端联调的依赖。

13. less

用途:Less 是一种 CSS 预处理器,通过增加变量、嵌套规则、混合(mixins)等特性,使 CSS 编写更加灵活、高效和可维护。

优点:提高开发效率,减少维护成本

三、项目目录

1. node_modules目录

项目所需要的依赖

2. public目录

项目需要的静态资源,不需要编译

3. scr目录

开发过程中主要的目录,所有的前端页面和逻辑代码,源代码目录

3-1. api目录

api请求,用于存放与后端API进行交互的函数或模块

3-2. components目录

用于存放可复用的ui组件

3-3. config目录

存放项目配置信息的目录,可能包括 环境变量、路由配置等

3-4. hooks目录

用来存放自定义的hooks

3-5. locales目录

用于存放与国际化相关的文件,如不同语言的翻译文本

3-6. pages目录

用来存放应用的页面级组件和路由

3-7. typings目录

用于存放全局类型定义或第三方库的类型扩展。这些类型定义有助于在开发过程中提供代码自动补全和类型检查

3-8. utils目录

用于存放项目中使用的工具函数或模块

3-9. main.tsx

入口文件,项目的入口文件,通常负责初始化应用,引入必要的库和框架、配置路由等

3-10. vite-env.d.ts

vite的环境声明文件,用于typescript类型的扩展

4. package.json

定义了项目的依赖和脚本,是项目的主要配置文件

5. package-lock.json

执行 npm install时生成,用于记录当前状态下实际安装的各个npm包的具体来源和版本号。确保项目依赖的一致性,防止在不同环境或不同时间安装时出现的版本差异导致的问题。如果当你下载依赖的时候一直报错(node版本是对的),可以让你的同事将他的这个文件发给你,你再使用npm install可以就能够下载成功了

6. index.html

网站的首页文件,包含网站的主要内容和导航

7. vite.config.ts

vite的配置文件,用于配置构建选项和插件。包含了基础路径、构建输出目录、开发服务器配置、模块解析规则、插件配置等选项

8. .eslintrc.cjs

eslint的配置文件,用于定义代码风格和编码规范。它是common JS格式的配置文件,可以使用require语句导入node.js模块。可以指定环境设置、解析器、插件、规则、扩展名、全局变量等选项

9. .gitignore

git版本控制系统中的一个配置文件,用于指定哪些文件或目录应被GIT忽略,不纳入版本控制

10. tsconfig.json

typescript编译选项配置文件,用于配置typescript编译器的行为
11. tsconfig.node.json

四、注意

注意,这边当前使用的是 node 18.14.2 npm 8.5.5

项目具体信息请查看cdn: http://t.csdnimg.cn/lq54F
github: https://github.com/taozhifeng2010/react-dome

1. 开发时遇到的问题点

1)运行新的项目

如果是新手,拿到一个新的项目时,想要快速运行该前端项目时准备工作

  1. 查看该项目的README.md文件,有些开发大佬会写运行的说明,如果没有写的话,请看下面
  2. 找到package.json文件,通常的项目都是需要依赖文件的,所以找到这个文件就等于你找到了运行程序的钥匙
  3. 找到这个文件之后,使用npm或者pnpm运行该文件下的scripts里面的命令
  4. 如果你是前后端不分离的项目的话,是不存在package.json文件的,你需要配置idea来打开该项目
2) 找不到文件,一团乱

我刚从培训班出来的第一份工作,发现老师教的和上班的代码完全不一样,根本就看不懂咋写的,超级复杂。而且大佬还不喜欢写注释

  1. 如果遇到公司大佬写的代码,封装了一个又一个方法,一个又一个组件的时候,不要慌。先把代码运行起来,然后你复制一个一模一样的页面,然后照着写,你就知道这里面写的是啥了
  2. 如果还是看不懂的话,你就问大佬。如果大佬不搭理你,你就找咸鱼,花个一笔钱,然后让大佬教你
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值