feat(auth): 实现登录注册功能和路由权限控制

- 新增 Login.vue 实现登录与注册界面,支持手机号、密码、验证码等验证
- 添加登录状态保持并在登录成功后设置 token
- 修改路由配置,新增 /login 路由,并调整默认班级页路由为 /class
- 移除 Header 组件中原有登录按钮,改为通过路由控制访问权限
- 实现路由前置守卫,根据 token 自动跳转登录页或班级页
- 添加验证码发送功能及倒计时禁用按钮逻辑
- 完善表单校验规则,区分登录和注册模式验证字段
This commit is contained in:
lbw
2025-12-29 14:45:44 +08:00
parent 2d76ed507e
commit 340bc5b5e3
4 changed files with 221 additions and 11 deletions

View File

@@ -5,14 +5,15 @@ import { createRouter, createWebHashHistory } from 'vue-router'
import Admid from '@/pages/admid/admid.vue'
import Student from '@/pages/student.vue'
import PlanTTS from '@/pages/PlanTTS.vue'
import Login from '@/pages/Login.vue'
// 统一在这里声明所有路由
const routes = [
{
path: '/', // 路由地址
component: Class, // 对应组件
meta: { // meta 信息
title: '班级' // 页面标题
path: '/class',
component: Class,
meta: {
title: '班级'
}
},
{
@@ -43,6 +44,13 @@ const routes = [
title: '管理员页面' // 页面标题
}
},
{
path: '/login',
component: Login,
meta: {
title: '登录'
}
},
{
path: '/plan/tts',
component: PlanTTS,