谷粒学院(六)前端页面搭建说明 | vue-element-admin

简介: 谷粒学院(六)前端页面搭建说明 | vue-element-admin

一、vue-element-admin

1、简介

vue-element-admin是基于element-ui 的一套后台管理系统集成方案。


功能:https://panjiachen.github.io/vue-element-admin-site/zh/guide/#功能


GitHub地址:https://github.com/PanJiaChen/vue-element-admin


项目在线预览:https://panjiachen.gitee.io/vue-element-admin

2、安装

1、下载模板框架压缩文件

这里我们使用171KB的 vue-admin-template-master.zip

4b1226b590b35179c17661959fd03d58.png

2、将文件解压到工作区里面

3、通过vscode的终端打开解压文件夹,进行依赖安装

# 安装依赖
npm install


60565280988fb6cc43f22838e6828264.png

4、启动下载好依赖项目

b211ef171df49732f83999409dca25ea.png

二、前端页面环境说明

1、前端框架入口


7613340d96e49d0ee8cd157fbebef440.png

2、前端页面框架模板技术介绍

vue-admin-template 模板 = vue + element-ui

3、目录结构介绍

build目录:放项目构建的脚本文件

config目录:全局配置

node_modules目录:项目依赖模块

src:项目源代码

static:静态资源

package.jspon:项目信息和依赖配置

config
├── index.js  // 修改useEslint:true,值修改为false
└── dev.env.js // 修改访问后端接口地址
src
├── api // 各种接口,定义调用方法
├── assets // 图片等资源 
├── components // 各种公共组件,非公共组件在各自view下维护 
├── icons // 图标 
├── router // 路由表 
├── store // 存储 
├── styles // 各种样式文件 
├── utils // 公共工具,非公共工具,在各自view下维护 
├── views // 各种layout,具体的页面,均以.vue结尾
├── App.vue //***项目顶层组件*** 
├── main.js //***项目入口文件***
└── permission.js //认证入口

三、项目的创建和基本配置

1、创建项目

将vue-admin-template-master重命名为guli-admin

2、修改项目信息

package.json

{
    "name": "guli-admin",
    ......
    "description": "谷粒学院后台管理系统",
    "author": "DaLiZi <2422737092@qq.com>",
    ......
}

3、修改端口号

config/index.js中修改

port: 9528

4、登录页修改

src/views/login/index.vue(登录组件)

 //第4行
<h3 class="title">谷粒学院后台管理系统</h3>
...
//第28行
<el-button :loading="loading" type="primary" style="width:100%;" @click.native.prevent="handleLogin">
    登录
</el-button>

5、页面零星修改

1、标题

index.html(项目的html入口)

<title>谷粒学院后台管理系统</title>


修改后热部署功能,浏览器自动刷新

2、国际化设置

打开 src/main.js(项目的js入口),第7行,修改语言为 zh-CN,使用中文语言环境,例如:日期时间组件

import locale from 'element-ui/lib/locale/lang/zh-CN' // lang i18n

3、icon

复制 favicon.ico 到根目录

4、导航栏文字

src/views/layout/components(当前项目的布局组件)

src/views/layout/components/Navbar.vue

//13行
<el-dropdown-item>
    首页
</el-dropdown-item>
//17行
<span style="display:block;" @click="logout">退出</span>

5、面包屑文字

src/components(可以在很多项目中复用的通用组件)

src/components/Breadcrumb/index.vue

meta: { title: '首页' } //38行

四、把系统登录功能改造本地(模拟登录)

1、修改系统登录默认地址

修改config/dev.env.js文件:

ad7a0bf1d8583dcdcb10a33803950063.png

2、分析登录调用的两个方法

通过查看/src/store/modules/user.js/src/api/login.js文件发现:

  • login() 返回token. GET方式
  • info() 返回roles、name、avatar头像。 POST方式


3、开发后端登录接口

@Api(description = "管理员登录")
@RestController
@RequestMapping("/eduservice/user")
@CrossOrigin //解决跨域问题
public class EduLoginController {
    //login功能
    @ApiOperation("登录获取token")
    @PostMapping("login")
    public R login(){
        return R.ok().data("token", "admin");
    }
    //info
    @ApiOperation("获取管理员信息")
    @GetMapping("info")
    public R info(){
        return R.ok().data("roles", "[admin]").data("name", "zhangsan").data("avatar", "https://wpimg.wallstcn.com/f778738c-e4f8-4870-b634-56703b4acafe.gif");
    }
}

4、修改/src/api/login.js中本地接口路径

eb81c1000ef6405787a822e93e8ff0fb.png


5、进行测试


67cf2d88666a511a8616adc8c368944f.png

跨域问题:通过一个地址去访问另外一个地址,这个过程中如果有三个地址任何一个不一样

访问协议  http    https
ip地址    192.18.1.1   172.11.11.11
端口号    9528     8001


解决方式:

在后端接口controller添加注解@CrossOrigin

使用SpringCloud GatWay解决(后面讲解)


五、框架使用过程

1、添加路由


83551493cd645125c22e78a139b9709d.png

6668d099e9cf7d301fecc59b02bb5730.png

2、点击某个路由,显示路由对应页面内容

f7c1dbece0098f654b5cc4de970fc3c5.png

13279c870aa2d3fefe393ccfb009953c.png

3、在api文件夹创建js文件,定义接口地址和参数

dac9e4b9ee781181828da8832d45c9fa.png


4、在创建vue页面引入js文件,调用方法实现功能

image.png

引入 import user from '.....'
data:{
},
created(){
},
methods:{
}


5、使用element-ui显示数据内容。


df11a6c6dcd8bd0fe5b356df55e9e75e.png






相关文章
|
18天前
|
前端开发 数据可视化 JavaScript
前端vite+vue3——可视化页面性能耗时指标(fmp、fp)
前端vite+vue3——可视化页面性能耗时指标(fmp、fp)
45 6
|
21天前
|
缓存 安全 JavaScript
前端安全:Vue应用中防范XSS和CSRF攻击
【4月更文挑战第23天】本文探讨了在Vue应用中防范XSS和CSRF攻击的重要性。XSS攻击通过注入恶意脚本威胁用户数据,而CSRF则利用用户身份发起非授权请求。防范措施包括:对输入内容转义、使用CSP、选择安全的库;采用Anti-CSRF令牌、同源策略和POST请求对抗CSRF;并实施代码审查、更新依赖及教育团队成员。通过这些实践,可提升Vue应用的安全性,抵御潜在攻击。
|
3天前
|
JSON JavaScript 前端开发
vue的 blob文件下载文件时,后端自定义异常,并返回json错误提示信息,前端捕获信息并展示给用户
vue的 blob文件下载文件时,后端自定义异常,并返回json错误提示信息,前端捕获信息并展示给用户
|
3天前
|
JSON JavaScript 前端开发
vue前端运行时出现RangeError: Maximum call stack size exceeded
vue前端运行时出现RangeError: Maximum call stack size exceeded
13 4
|
5天前
|
JavaScript 前端开发
vue前端展示【1】
vue前端展示【1】
8 1
|
12天前
|
JSON JavaScript Java
从前端Vue到后端Spring Boot:接收JSON数据的正确姿势
从前端Vue到后端Spring Boot:接收JSON数据的正确姿势
23 0
|
14天前
|
前端开发 JavaScript 开发者
【专栏:HTML与CSS前端技术趋势篇】前端框架(React/Vue/Angular)与HTML/CSS的结合使用
【4月更文挑战第30天】前端框架React、Vue和Angular助力UI开发,通过组件化、状态管理和虚拟DOM提升效率。这些框架与HTML/CSS结合,使用模板语法、样式管理及组件化思想。未来趋势包括框架简化、Web组件标准采用和CSS在框架中角色的演变。开发者需紧跟技术发展,掌握新工具,提升开发效能。
|
15天前
|
JSON JavaScript 前端开发
前端框架vue的样式操作,以及vue提供的属性功能应用实战
前端框架vue的样式操作,以及vue提供的属性功能应用实战
|
15天前
|
JavaScript 前端开发 数据安全/隐私保护
优秀的前端框架vue,原理剖析与实战技巧总结【干货满满】(二)
优秀的前端框架vue,原理剖析与实战技巧总结【干货满满】(二)
|
15天前
|
JavaScript 前端开发 Python
优秀的前端框架vue,原理剖析与实战技巧总结【干货满满】(一)
优秀的前端框架vue,原理剖析与实战技巧总结【干货满满】(一)