前端框架使用vue-cli( 第四层:业务源码层--登陆页相关)

前端框架使用 Vue-CLI

第四层:业务源码层 ------ 登录页相关

简介

前面的章节,我们已经分析了:

  • 环境依赖层
  • 工程配置层
  • 插件配置层

从这一章节开始:

我们正式进入:

Vue-CLI 工程中的业务源码层。

这一层开始,项目已经不再是:

  • webpack 配置
  • vue.config.js
  • 插件安装

而是真正开始进入:

"页面业务开发"。

而登录页:

通常就是一个后台管理系统的第一个业务页面。

因此:

登录页非常适合作为:

理解 Vue 企业级开发的入门案例。


一、登录页在整个系统中的作用

登录页本质上承担几个核心职责:

text 复制代码
1. 用户输入账号密码
2. 前端进行表单校验
3. 调用后端登录接口
4. 获取 token
5. 保存用户状态
6. 跳转首页
7. 初始化权限菜单

因此:

登录页实际上会涉及:

  • Vue 页面开发
  • ElementUI 表单
  • Vue 数据绑定
  • axios 请求
  • Vuex 状态管理
  • Router 页面跳转
  • Token 持久化
  • 权限初始化

所以:

登录页几乎是 Vue 企业级项目的缩影。


二、登录页所在的位置

一般 Vue-CLI 后台项目:

登录页通常位于:

text 复制代码
src/views/login/index.vue

例如:

text 复制代码
src
 ├── views
 │    ├── login
 │    │     └── index.vue

这里:

  • views → 页面级组件
  • login → 登录模块
  • index.vue → 登录页面

这里体现了:

Vue 项目模块化的目录思想。


三、登录页本质上仍然是 Vue 组件

例如:

vue 复制代码
<template>
  <div class="login-container">

  </div>
</template>

<script>
export default {

}
</script>

<style scoped>

</style>

登录页虽然是"业务页面"。

但本质上:

它仍然是一个 Vue 组件。

因此:

它依然遵循:

  • template
  • script
  • style

三层结构。


四、登录页面结构分析

通常登录页会包含:

text 复制代码
LoginPage
 ├── Logo区域
 ├── 登录表单
 │     ├── 用户名
 │     ├── 密码
 │     └── 登录按钮
 └── 背景区域

例如:

vue 复制代码
<template>
  <div class="login-container">

    <div class="login-form">

      <el-input v-model="loginForm.username" />

      <el-input
        v-model="loginForm.password"
        type="password"
      />

      <el-button @click="handleLogin">
        登录
      </el-button>

    </div>

  </div>
</template>

这里涉及:


1. v-model 双向绑定

例如:

vue 复制代码
v-model="loginForm.username"

作用:

text 复制代码
输入框 ←→ Vue数据

用户输入内容时:

Vue 的数据会自动变化。


2. 点击事件

例如:

vue 复制代码
@click="handleLogin"

作用:

text 复制代码
按钮点击 → 调用 methods 方法

五、登录页的数据结构

例如:

javascript 复制代码
data() {
  return {

    loginForm: {
      username: '',
      password: ''
    }

  }
}

这里:

text 复制代码
loginForm
 ├── username
 └── password

本质上:

就是整个登录表单的数据模型。

Vue 会通过响应式机制:

实时同步页面与数据。


六、登录逻辑分析

登录最核心的方法:

javascript 复制代码
methods: {

  handleLogin() {

  }

}

这个函数通常负责:

text 复制代码
1. 校验表单
2. 调用接口
3. 保存token
4. 页面跳转

七、调用后端接口

例如:

javascript 复制代码
import { login } from '@/api/user'

这里:

text 复制代码
@  → src目录

实际对应:

text 复制代码
src/api/user.js

例如:

javascript 复制代码
export function login(data) {

  return request({
    url: '/login',
    method: 'post',
    data
  })

}

这里体现了:

Vue 页面 与 JS 模块协作的思想。


八、Token 保存机制

登录成功后:

后端通常会返回:

json 复制代码
{
  "token": "xxxx"
}

前端会保存:

javascript 复制代码
setToken(token)

通常会保存到:

text 复制代码
Cookie
LocalStorage
SessionStorage

作用:

text 复制代码
后续请求携带用户身份

九、Vuex 状态管理参与

大型项目中:

用户信息通常不会只保存在页面。

而会进入:

text 复制代码
Vuex

例如:

javascript 复制代码
dispatch('user/login')

流程:

text 复制代码
Login.vue
   ↓
Vuex Action
   ↓
API请求
   ↓
保存Token
   ↓
返回结果

这里体现了:

Vue 企业级项目的数据集中管理思想。


十、登录成功后的页面跳转

例如:

javascript 复制代码
this.$router.push('/')

作用:

text 复制代码
登录成功 → 跳转首页

这里:

text 复制代码
$router

就是:

Vue-Router 提供的路由对象。


十一、登录页涉及的核心技术栈

登录页虽然简单。

但其实已经包含:

text 复制代码
Vue
Vue-Router
Vuex
ElementUI
Axios
Cookie
JS模块化
权限体系
接口请求

因此:

学会登录页,实际上已经进入 Vue 企业级开发。


十二、登录页在 Vue-CLI 中的意义

登录页的真正意义:

并不仅仅是:

"输入账号密码"。

而是:

通过登录页,把整个前端工程体系串联起来。

因为:

登录页会同时连接:

text 复制代码
页面层
组件层
路由层
接口层
状态层
权限层
存储层

所以:

登录页是:

Vue 企业级开发最经典的入门案例。

相关推荐
Rooting++1 小时前
vue2强制刷新路由的办法
前端·javascript·vue.js
nunumaymax1 小时前
【第四章-react ajax】
前端·react.js
前端若水1 小时前
层叠层(@layer):彻底解决优先级战争,告别 !important
前端·css·css3
invicinble1 小时前
前端框架使用vue-cli( 第二层:工程配置层--vue语法系列)
前端·vue.js·前端框架
爱滑雪的码农1 小时前
React+three.js之场景(Scene),相机(Camera)
前端·javascript·react.js
_waylau1 小时前
“Java+AI全栈工程师”问答01:Spring MVC登录页面错误提示
java·开发语言·vue.js·后端·spring·mvc·springcloud
UXbot1 小时前
AI应用原型平台核心能力:界面自动生成、交互流程编辑、多格式代码导出详解
前端·低代码·交互·软件构建·原型模式·web app
兄弟加油,别颓废了。1 小时前
[特殊字符] SDN 可视化管理平台完整搭建教程(Vue + Flask + MySQL)
vue.js·mysql·flask
call me by ur name1 小时前
多模态大模型轻量化
前端·网络·人工智能