Files
2026-10-20 21:19:44 +08:00

3.3 KiB
Raw Permalink Blame History

1.5 技术栈说明

:::tip 概述 本项目以后端 GoFrame v2 + 前端 Vue3/Element Plus 为核心,全部依赖选型遵循"主流、稳定、长期维护"原则。本页给出完整的技术栈清单与关键依赖版本。 :::

后端技术栈

技术 版本 用途
Go 1.27.2 语言运行时(go.mod 声明)
GoFrame (gf/v2) v2.10.3 核心框架(ghttp/gdb/gcfg/gcache/gcron/gconv…)
gf mysql 驱动 v2.10.3 MySQL 支持(contrib/drivers/mysql)
gf pgsql 驱动 v2.10.3 PostgreSQL 支持
gf mssql 驱动 v2.10.3 SQL Server 支持
gf oracle 驱动 v2.10.3 Oracle 支持
gf sqlite 驱动 v2.10.3 SQLite 支持
gf redis 适配 v2.10.3 Redis 支持(nosql/redis + go-redis/v9)
golang-jwt v5.3.1 JWT 双令牌签发与校验(HS256)
golang.org/x/crypto v0.58.0 bcrypt 密码哈希
xuri/excelize v2.11.0 Excel 导入导出
lionsoul2014/ip2region xdb IP 归属地解析
golang.org/x/image v0.38.0 验证码图片渲染

前端技术栈

技术 版本 用途
Vue ^3.4.27 核心框架(Composition API)
TypeScript ^5.x 类型系统
Vite ^5.x 构建工具(多环境模式)
Element Plus ^2.7.4 UI 组件库
Pinia ^2.1.7 状态管理
Vue Router ^4.3.2 路由(常量路由 + 动态菜单路由)
axios ^0.27.2 HTTP 客户端(封装于 utils/http)
echarts ^5.5.0 数据可视化
tinymce 5.10.3 富文本编辑器
@vueup/vue-quill 1.0.0-beta.8 富文本编辑器(Quill)
xlsx ^0.18.5 前端 Excel 导入导出
cropperjs / vue-cropper ^1.6.2 / 0.5.8 图片裁剪(头像上传)
dayjs ^1.11.11 日期处理
lodash-es ^4.17.21 工具函数
vuedraggable ^4.1.0 拖拽排序(菜单管理)
qrcode ^1.5.3 二维码(扫码登录形态)
mockjs ^1.1.0 本地 Mock

数据与中间件

组件 要求 说明
MySQL 5.7+ / 8.x 规范基准数据库(document/mysql/ 定稿脚本)
PostgreSQL 12+ document/postgresql/ 定稿脚本,整库迁移实测
SQL Server 2012+ document/sqlserver/ 定稿脚本,整库迁移实测
Oracle 11g+ document/oracle/ 定稿脚本,迁移器按定稿约定实现
SQLite 3.x document/sqlite/ 定稿脚本,整库迁移实测(开发/单机场景)
Redis 6.x+ 缓存(不可用时自动降级进程内存,功能退化单机语义)

架构模式一览

后端:  分层架构 + 声明式基座 + 全局钩子横切 + gmeta 反射注解
前端:  组合式 API + 动态路由 + 指令级权限 + querySchemas 声明式筛选
通信:  RESTful JSON + JWT Bearer + 统一响应信封
        (公开路由例外:/api/login、/api/captcha、/api/oauth2/token、/api/health 不带版本段)

版本升级注意

:::warning 版本约束

  • go.mod 声明 go 1.27.2,构建环境 Go 版本过低会直接编译失败。
  • GoFrame 五驱动版本必须与框架核心一致(同为 v2.10.3),升级时同步升级。
  • 前端包管理推荐 pnpm(仓库含 pnpm 工作流脚本),yarn/npm 安装可能遇到 workspace 差异。
  • Redis 客户端为 go-redis/v9,Redis 4.x 以下的个别命令(如部分 INFO 字段)不保证兼容。 :::