蜗牛学苑 Java 智能体学习 Day42|项目周开发技术汇总 1 思维导图复盘

一、思维导图整体知识结构梳理

页面布局

ElementPlus Container 容器布局
  • 组件说明
    • el‑container:外层容器;子元素包含el‑header/el‑footer垂直排列,不包含则水平排列
    • el‑header:顶栏容器
    • el‑aside:侧边栏容器
    • el‑main:主要内容区域容器
    • el‑footer:底栏容器
侧边菜单栏
  • 使用 ElementPlus 菜单组件实现左侧导航;点击菜单切换右侧内容,需要 Vue‑Router 路由实现

Vue Router

介绍
  • 定位:Vue 官方客户端路由解决方案
  • SPA 单页应用路由作用
    • URL 和页面内容绑定
    • 更新浏览器 URL,页面不重新加载服务端资源
    • 根据不同访问路径,展示不同组件
Router 三大核心组成
  1. 路由实例 Router:整个应用路由管理中心,总调度员;维护 URL 路径与组件映射对照表;处理导航、路由守卫
  2. Router‑Link:路由链接组件,最终渲染为 a 标签;不刷新整个页面,实现前端跳转
  3. Router‑View:路由视图,路由匹配的组件渲染放置的位置
实现步骤
  1. 安装:npm install vue‑router
  2. 创建路由实例:src/router/index.js;配置path路径与component组件映射关系;import { createRouter, createWebHistory } from 'vue‑router'
  3. 注册路由组件main.js:createApp(App).use(router).mount('#app')
  4. 使用路由
  • Router‑Link做跳转导航
  • Router‑View放置页面渲染位置
路由进阶‑嵌套路由
  • 适用场景:部分页面不需要公共布局(如登录页)
  • 配置:路由配置中写children数组;父组件内部需要放置Router‑View用于渲染子路由组件

登录模块

ElementPlus 表单校验
  • 核心 API
    • ref:获取表单组件实例
    • rules:校验规则对象
    • validator:自定义校验函数
    • trigger:触发校验时机 blur 失去焦点
    • form.validate():执行全部表单校验
  • 登录表单逻辑:收集用户名、密码表单数据;表单校验通过,发起请求登录
Axios 发送登录请求
  • 安装 axios:npm install axios
  • Vite 跨域处理:修改vite.config.js配置代理解决跨域
本地存储 localStorage
  • 特点:浏览器本地存储,容量约 5MB;key‑value 字符串存储,全部值为字符串
  • API
    • localStorage.setItem(key,value):保存数据
    • localStorage.getItem(key):获取数据
    • localStorage.removeItem(key):删除数据
    • localStorage.clear():清空全部存储
编程式导航
  • 作用:js 代码实现页面跳转,替代Router‑Link点击
  • API:useRouter()获取路由;router.push(路径)
  • 使用场景:页面跳转携带参数,例如登录→详情页
  • 核心口诀
    • Router:用来 "走"(跳转)
    • Route:用来 "看"(读取参数)
路由传参‑query 传参
  • 传参:router.push({path:'xxx',query:{key:value}})
  • 接收参数:import { useRoute } from 'vue‑router';const route = useRoute();route.query获取参数对象

Axios 拦截器

  1. 创建 axios 实例:axios.create({baseURL:'接口基础地址',timeout:超时时间})
  2. 请求拦截器 request.use
  • 执行时机:请求发送到后端之前执行
  • 业务用途:在请求头自动携带 token 令牌
  1. 响应拦截器 response.use
  • 2xx 成功响应:直接返回response.data,简化后续获取数据
  • 非 2xx 错误响应:返回Promise.reject(error)抛出错误给业务捕获
  1. 导出实例,业务组件引入使用

路由守卫 beforeEach

  • 作用:全局前置守卫,访问路由前执行逻辑;控制页面访问权限,拦截未登录访问
  • 参数说明
    • to:将要去往的路由对象
    • from:离开的路由对象
    • next():放行 / 重定向跳转
  • 登录鉴权逻辑
    1. 如果去登录页,直接放行next()
    2. 读取localStorage中的 token
    3. 有 token:放行next();没有 token,强制跳转登录页next('/login')

二、制作意图

  1. 掌握 ElementPlus Container 布局容器,实现后台管理系统经典侧边栏 + 顶部栏 + 主内容页面框架;
  2. 学习 Vue‑Router 前端路由,理解 SPA 单页面原理;掌握路由实例、Router‑Link、Router‑View 三大核心;学会基础路由、嵌套路由、编程式跳转、query 传参;
  3. 使用 ElementPlus 表单校验完成登录页;Axios 发送后端请求;localStorage 保存 token;Axios 请求拦截器统一附加 token;
  4. 使用全局路由守卫beforeEach做登录鉴权,未登录拦截跳转登录页,完成登录整套前端流程。

三、当日学习总结

Day41 学习后台管理系统登录全套前端技术:

  1. ElementPlus Container 容器快速搭建管理系统整体页面布局,搭配菜单组件,依靠 Vue‑Router 实现菜单切换页面。
  2. Vue‑Router 实现 SPA 前端路由,分为声明式导航 Router‑Link 与编程式导航 router.push;支持嵌套路由、query 参数传递。
  3. 登录页面:el‑form 表单校验;axios 发送登录请求;localStorage 持久化存储 token 令牌。
  4. Axios 拦截器:请求拦截统一给请求头带上 token,简化每一次接口调用;响应拦截统一处理返回数据。
  5. 全局路由守卫 beforeEach 做权限控制,访问非登录页面时校验本地 token,无 token 强制跳转登录,完成前端鉴权。
相关推荐
古法老登瞎折腾8 小时前
大数据智能运维实战(十一):运维 MCP 的工程化——权限、限流、审计与错误处理
java·大数据·运维·spring ai·mcp
学逆向的8 小时前
C 堆区内存管理
c语言·开发语言·网络安全
huoyueyi8 小时前
《融天AI-APP从0到1开发实录》
开发语言·lua
zhangrelay9 小时前
新版|-|单片机原理与接口技术-2026持续改进优化-从MEGA2560-ESP32与Wokwi到ROS2-Lyrical与具身智能栈
笔记·单片机·嵌入式硬件·学习
智能运维指南9 小时前
研制过程“两张皮“怎么破:研制一体化支撑平台的定位、能力边界与落地前提
java·前端·人工智能·嘉为蓝鲸
yz_aiks10 小时前
Spring AI 2.1 ChatMemory 已过时用什么替代:迁移到 Session Memory 实战(JDBC 存储与会话压缩)
java·spring boot·大模型·ai agent·spring ai
金銀銅鐵10 小时前
[Java] 用 GUI 展示 EnumMap 增删键值对时的内部变化
java·后端·ai编程
学长毕设10 小时前
基于SpringBoot的上门洗车服务系统设计与实现
java·spring boot·后端
jason成都10 小时前
RTKLIB-Java 多基线联合RTK:FIX率从0%到91.5%的三层根因修复
java·gnss·rtklib·rtklib_java
OpenAnolis小助手10 小时前
PHP 两个严重漏洞曝光,龙蜥社区 24 小时完成 3 版本修复
开发语言·操作系统·php·龙蜥社区