蜗牛学苑 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.jscreateApp(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 强制跳转登录,完成前端鉴权。
相关推荐
槑有烦恼1 小时前
Java 字符串 & List集合 高频易错真题复盘(含全部错题+修正)
java
Gyr01 小时前
浅刷了一遍51CTO软考题库客观题及其解析(4)
学习·软考·知识点·信息安全工程师
语戚1 小时前
力扣 1621. 大小为K的不重叠线段的数目:动态规划(Java 实现)
java·算法·leetcode·动态规划·力扣·dp
君顾12 小时前
本地托管机构管理源码实战:需求拆解、数据建模与多端部署
java·开发语言·托管
青山木2 小时前
Hot 100 --- 最长有效括号
java·数据结构·算法·leetcode·动态规划
是隼人2 小时前
buuctf-pwn [NewStarCTF 2023 公开赛道]stack migration(64位栈迁移)题解(学习过程持续更新)
c语言·学习·安全·pwn入门·ctf入门
xcl09252 小时前
本地电竞服务交易系统架构设计与实战:从同城匹配到订单履约
java·spring boot
曹牧2 小时前
SVN 上查找文件
java
加贝哥|usun2 小时前
maven项目从外网搬迁至内网-本地仓库(不搭建私服)
java