React快速开发框架

本框架主要用于快速搭建项目

使用的基本库:webpack+react+react-router+typescript

ps:有不足之处请多多包涵,提出意见或者建议

目的:

前端开发大多数时间是基于市面上比较流行的成品框架开始进行开发,途中遇到的问题大都和业务相关,和技术原理相关性偏弱。并且,我在使用这些流行框架的时候也发现功能有点过多,导致很多代码都没有去仔细思考。因此,基于自己的实际项目及想法,从头搭建一个建议的项目,后续根据项目的迭代慢慢更新、优化。

框架基础库:

ReactAntdAxiosdayjsi18nextlodashstyle-componentswebpack

项目答疑:

为什么不使用Redux做全局数据管理?

之前的项目都是用过Redux,但是就项目体量来说,我暂时没有体会到Redux的便利性,我个人来说对于中小项目不使用Redux写的更舒服,数据链路更加清晰;因此我使用React自带的Reducer进行处理全局数据管理;
2.

为什么使用style-components?

为了解决多组件样式污染的问题,不过缺点就是同一个Wrapper中不能相同样式
3.

webpack进行了哪些优化?

目前根据在做的项目进行代码分隔,css压缩,通用生产环境优化等处理

代码地址:项目模版

准备工作

安装依赖

npm i

安装推荐插件并重启VSCode

  • dbaeumer.vscode-eslint
  • editorconfig.editorconfig
  • esbenp.prettier-vscode
  • stylelint.vscode-stylelint
  • styled-components.vscode-styled-components
  • lokalise.i18n-ally
  • bradlc.vscode-tailwindcss

启动项目

npm run start

打包项目

npm run build

目录说明

  • src/api 所有接口的位置
  • src/asset 静态资源
  • src/hooks hook的位置
  • src/layouts 页面布局,其中包含了Wrapper鉴权
  • src/pages/ 业务页面
  • src/router 路由配置
  • src/store/ 全局store,通过useStore()获取内容
  • src/theme/ 通用样式配置
  • src/utils 工具函数
  • types/ 全局类型定义
  • .env.development 开发环境的环境变量配置
  • .env.production 生产环境的环境变量配置
  • .eslintignore eslint配置文件
  • .gitignore git配置文件
  • .prettierignore prettier配置文件
  • .styleintignore styleint配置文件
  • public/index.html 打包模版html文件,可以更改其中的等待页面内容
  • .tailwind.config.js tailwind的配置文件
  • webpack.config.js webpack通用配置文件
  • webpack.dev.js webpack开发环境配置文件
  • webpack.prod.js webpack生产环境配置文件
相关推荐
道友可好1 小时前
AI 是最好的混乱放大器:代码熵管理实战
前端·人工智能·后端
猩猩程序员2 小时前
前端学习 AI Agent 开发
前端
Younglina3 小时前
打了3年羽毛球球才发现:我对自己的装备和胜率一无所知
前端·后端
风骏时光牛马3 小时前
Bash脚本高阶实战与常见报错完整代码案例详解
前端
kartjim3 小时前
我用 AI 一小时写了一个世界杯数据可视化平台|前端 VibeCoding 初体验
前端·程序员·ai编程
lichenyang4533 小时前
从一个 WebView Demo 开始,理解 ASCF 小程序底座到底在做什么
前端
牧艺3 小时前
用 Next.js 搭建 AI Agent 前端编排:从 Plan 到 SSE Trace 的完整实践
前端·agent
行者全栈架构师3 小时前
UniApp集成vk-uview-ui组件库详解:打造高效UI开发体验
前端·vue.js
林希_Rachel_傻希希3 小时前
js里面的proxy理解。以及vue3响应式数据设计底层
前端·javascript·面试
sunrains3 小时前
uniapp x 动态Tabbar(切换无闪烁)+动角标+主题切换+自定义tabbar页面导航栏样式设置 支持服务端动态配置根据角色动态设置Tabbar
前端