谷粒学院(六)前端页面搭建说明 | 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






相关文章
|
21天前
|
JavaScript 前端开发 程序员
前端原生Js批量修改页面元素属性的2个方法
原生 Js 的 getElementsByClassName 和 querySelectorAll 都能获取批量的页面元素,但是它们之间有些细微的差别,稍不注意,就很容易弄错!
|
1月前
|
前端开发 数据安全/隐私保护
.自定义认证前端页面
.自定义认证前端页面
10 1
.自定义认证前端页面
|
20天前
|
前端开发 JavaScript 搜索推荐
前端懒加载:提升页面性能的关键技术
前端懒加载是一种优化网页加载速度的技术,通过延迟加载非首屏内容,减少初始加载时间,提高用户访问体验和页面性能。
|
28天前
|
前端开发 安全 JavaScript
在阿里云快速启动Appsmith搭建前端页面
本文介绍了Appsmith的基本信息,并通过阿里云计算巢完成了Appsmith的快速部署,使用者不需要自己下载代码,不需要自己安装复杂的依赖,不需要了解底层技术,只需要在控制台图形界面点击几下鼠标就可以快速部署并启动Appsmith,非技术同学也能轻松搞定。
|
2月前
|
前端开发 JavaScript
回顾前端页面发送ajax请求方式
回顾前端页面发送ajax请求方式
38 18
|
1月前
|
前端开发 JavaScript 开发者
React与Vue:前端框架的巅峰对决与选择策略
【10月更文挑战第23天】React与Vue:前端框架的巅峰对决与选择策略
|
1月前
|
前端开发 JavaScript 数据管理
React与Vue:两大前端框架的较量与选择策略
【10月更文挑战第23天】React与Vue:两大前端框架的较量与选择策略
|
20天前
|
JavaScript 前端开发 搜索推荐
Vue的数据驱动视图与其他前端框架的数据驱动方式有何不同?
总的来说,Vue 的数据驱动视图在诸多方面展现出独特的优势,其与其他前端框架的数据驱动方式的不同之处主要体现在绑定方式、性能表现、触发机制、组件化结合、灵活性、语法表达以及与后端数据交互等方面。这些差异使得 Vue 在前端开发领域具有独特的地位和价值。
|
2月前
|
JavaScript 前端开发 算法
前端优化之超大数组更新:深入分析Vue/React/Svelte的更新渲染策略
本文对比了 Vue、React 和 Svelte 在数组渲染方面的实现方式和优缺点,探讨了它们与直接操作 DOM 的差异及 Web Components 的实现方式。Vue 通过响应式系统自动管理数据变化,React 利用虚拟 DOM 和 `diffing` 算法优化更新,Svelte 通过编译时优化提升性能。文章还介绍了数组更新的优化策略,如使用 `key`、分片渲染、虚拟滚动等,帮助开发者在处理大型数组时提升性能。总结指出,选择合适的框架应根据项目复杂度和性能需求来决定。
|
2月前
|
前端开发 JavaScript 安全
在vue前端开发中基于refreshToken和axios拦截器实现token的无感刷新
在vue前端开发中基于refreshToken和axios拦截器实现token的无感刷新
134 4