littlebot
Published on 2025-04-13 / 0 Visits
0

【源码】基于 React 框架的前端应用项目

项目简介

这是一个基于 mobxreactreact routerumi 以及 TypeScript 构建的 React 前端项目。选用 antdteaness 作为组件库,致力于打造功能丰富、结构清晰且易于维护的前端应用。

项目的主要特性和功能

  1. 先进技术栈:运用 mobx 进行状态管理,react router 处理路由,umi 作为开发框架,TypeScript 增强类型检查,提高开发效率与代码质量。
  2. 丰富组件库:集成 antdteaness 组件库,提供多样 UI 组件,满足不同业务需求。
  3. 菜单动态加载:通过特殊的 url 标识与菜单结合,实现组件动态加载,增强应用灵活性。
  4. 环境变量配置:可通过环境变量配置 google analyticsAES 秘钥sentry DNS 等,便于不同环境定制。

安装使用步骤

安装依赖

在项目根目录下执行 npm i 安装项目所需依赖。

运行项目

执行 npm run start 启动项目。

提交代码

遵循 https://www.conventionalcommits.org/ 规范,也可使用 npm run commit 快速格式化提交。

构建与发布

  1. 执行 npm run release 生成 tag。
  2. 执行 npm run build 进行项目构建。
  3. 若有 sentry 启用需求,需在项目下添加 .sentryclirc 文件,格式如下: ```toml [defaults] url = sentry地址 project = sentry项目名 org = sentry

[auth] token = 授权token ```

环境变量配置

构建环境变量

  • UA:google analytics,默认无(不开启 google analytics)。
  • AES:AES 秘钥,默认 test。
  • DSN:sentry DNS,默认无(不开启 sentry)。

其他环境变量

可创建 .env.local 文件覆盖 umi 环境变量,具体参考 umi 环境变量

开发环境配置

在 vscode settings 中可配置如下内容: javascript { "prettier.eslintIntegration": true, "eslint.validate": [ "javascript", "javascriptreact", "typescript", "typescriptreact", { "language": "javascript", "autoFix": true }, { "language": "javascriptreact", "autoFix": true }, { "language": "typescript", "autoFix": true }, { "language": "typescriptreact", "autoFix": true } ] }

组件用例

组件库地址: - 外网,需翻墙加速 teaness.org - 内网,隐身模式访问 teaness.org

菜单动态加载组件

通过特殊的 url 标识与菜单结合,url 设计:component:{block组件}({注入的组件props})path={url路径}。 例如:component:AutoGenPage({"type": "cnt"})path=cnt

常见问题解答(FAQ)

默认是开启 mock 的,若需要关闭,请创建 .env.local 文件,并添加 mock=none

下载地址

点击下载 【提取码: 4003】【解压密码: www.makuang.net】