You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

3.3 KiB

GoFaster 登录功能说明

功能概述

GoFaster 前端应用已成功集成了完整的用户登录系统,包括:

  • 🔐 登录弹窗组件
  • 📱 响应式设计
  • 🔒 验证码支持
  • 💾 本地状态管理
  • 🎨 主题适配

使用方法

1. 显示登录弹窗

登录弹窗可以通过以下两种方式触发:

方式一:点击顶部导航栏的"登录"按钮

  • 在未登录状态下,顶部导航栏会显示"🔐 登录"按钮
  • 点击即可打开登录弹窗

方式二:点击首页的登录按钮

  • 在首页的欢迎区域,未登录状态下会显示登录提示
  • 点击"立即登录"按钮即可打开登录弹窗

2. 登录流程

  1. 获取验证码:弹窗打开时自动获取验证码图片
  2. 填写信息
    • 用户名:输入您的用户名
    • 密码:输入您的密码
    • 验证码:输入图片中显示的4位验证码
  3. 提交登录:点击"登录"按钮提交
  4. 验证码刷新:点击验证码图片可刷新获取新的验证码

3. 默认账号

系统提供了默认的管理员账号用于测试:

  • 用户名sysadmin
  • 密码sysadmin@123

技术实现

组件结构

MainLayout.vue (主布局)
├── LoginModal.vue (登录弹窗)
├── Toast.vue (消息提示)
└── 其他组件...

状态管理

  • 使用 Vue 3 Composition API
  • 通过 provide/inject 在组件间共享登录状态
  • 本地存储用户信息和登录状态

后端接口

登录功能需要后端提供以下接口:

  1. 获取验证码GET /api/auth/captcha
  2. 用户登录POST /api/auth/login

配置说明

前端配置位于 src/config/app.config.js,默认连接 http://localhost:8080/api

样式特性

主题适配

  • 支持深色/浅色主题切换
  • 使用 CSS 变量实现主题一致性
  • 响应式设计,支持移动端

动画效果

  • 弹窗滑入动画
  • 加载状态指示器
  • 平滑的过渡效果

错误处理

  • 网络连接失败提示
  • 验证码错误处理
  • 登录失败重试机制
  • 表单验证提示

安全特性

  • 密码输入框隐藏内容
  • 验证码防机器人
  • Token 认证机制
  • 自动登出处理

开发说明

添加新的登录相关功能

  1. LoginModal.vue 中添加新的表单字段
  2. userService.js 中添加对应的 API 调用
  3. MainLayout.vue 中处理新的状态变化

自定义样式

登录弹窗的样式可以通过修改 LoginModal.vue 中的 CSS 变量来调整:

:root {
  --primary-color: #1976d2;
  --primary-hover: #1565c0;
  --bg-primary: #ffffff;
  --text-primary: #2c3e50;
}

故障排除

常见问题

  1. 登录弹窗不显示

    • 检查浏览器控制台是否有错误
    • 确认组件是否正确导入
  2. 验证码获取失败

    • 检查后端服务是否正常运行
    • 确认网络连接正常
  3. 登录失败

    • 检查用户名和密码是否正确
    • 确认验证码输入正确
    • 查看后端日志获取详细错误信息

调试模式

在开发环境中,可以打开浏览器开发者工具查看:

  • 网络请求状态
  • 控制台日志
  • Vue 组件状态

更新日志

  • v1.0.0:初始版本,包含基本的登录功能
  • 支持用户名/密码登录
  • 集成验证码系统
  • 响应式设计
  • 主题适配