1.背景

1.1.为什么要讲这课程

跟上时代....

虽然我们主要讲解的课程是java后端课程...

但是很多技术是设计到前端展示的...我们也需要跟上时代....

不能java后端技术将得很深入很前言,但是前端还是使用很老的技术...

这样就成了上身穿西装,鞋子穿草鞋.....不协调

1.2.讲课方式

主要讲解如何快速的搭建一个后端管理系统的前端框架,在这个框架下快速的实现增删改查业务......

可以说是站巨人的肩上做二次开发...实际生产中大多是也是这样的.....

因此首先我们要感谢一下开源的项目模板.....

课程时长月2小时!

建议学习方式:一口气把视频看完,然后在跟着笔记写代码!

1.3.课件与视频资料下载

视频:

视频,代码与资料下载:

百度网盘下载:

在线学习:https://study.163.com/course/courseMain.htm?courseId=1213374816&share=2&shareId=400000000332026

2.项目模板

2.1.开源模板项目下载与启动

课程中使用的模板是实际开发中用得比较多的后端管理项目模板

拉取与下载方式

# vue-admin-template
# 克隆项目
git clone https://github.com/PanJiaChen/vue-admin-template.git
# 进入项目目录
cd vue-admin-template
# 安装依赖
npm install (这步不要执行,会很慢的)
# 建议不要直接使用 cnpm 安装以来,会有各种诡异的 bug。可以通过如下操作解决 npm 下载速度慢的问题
npm install --registry=https://registry.npm.taobao.org
# 启动服务
npm run dev
```
浏览器访问 [http://localhost:9528](http://localhost:9528)

步骤一:模板拉取

步骤二:安装依赖

步骤三:启动服务

初始项目页面

2.2.项目简单处理

1.项目结构简单介绍

官方使用文档:https://panjiachen.gitee.io/vue-element-admin-site/zh/guide/

2.删除模板中的案例菜单

删除后保存启动,界面如下图:

2.3.添加路由与菜单

添加菜单:

菜单内容为: 每个菜单的内容都是这样的模板,

这里只是构建结构,后面在这个结构中写就可以了

<template>
  <h1>用户管理</h1>
</template>
<script>
export default {
  name: 'UserInfo'
}
</script>
<style lang="scss">
</style>

添加路由:

 {
path: '/sys',
component: Layout,
name: 'sys',
meta: { title: '系统管理', icon: 'el-icon-user' },
children: [
{
path: 'user_info',
name: 'user_info',
component: () => import('@/views/user/user_info'),
meta: { title: '用户管理' }
},
{
path: 'dic_info',
name: 'dic_info',
component: () => import('@/views/dic/dic_info'),
meta: { title: '字典管理' }
}
]
},
{
path: '/channel',
component: Layout,
name: 'channel',
meta: { title: '渠道管理', icon: 'el-icon-data-board' },
children: [
{
path: 'up_channel_info',
name: 'up_channel_info',
component: () => import('@/views/up_channel/up_channel_info'),
meta: { title: '上游渠道' }
},
{
path: 'up_channel_product',
name: 'up_channel_product',
component: () => import('@/views/up_channel/up_channel_product'),
meta: { title: '上游产品' }
},
{
path: 'down_channel_info',
name: 'down_channel_info',
component: () => import('@/views/down_channel/down_channel_info'),
meta: { title: '下游渠道' }
},
{
path: 'down_channel_product',
name: 'down_channel_product',
component: () => import('@/views/down_channel/down_channel_product'),
meta: { title: '下游产品' }
} ]
}

保存启动后页面显示:

3.登录与退出登录

3.1.接口代理配置

重要提醒:修改了路由后要重启(npm run dev)vue项目,路由才会生效.

    // 配置代理跨域
    proxy: {
      '/dev-api': {
        target: 'http://localhost:6001', // 接口路由
        pathRewrite: { '^/dev-api': '' }
      }
    }

修改通用请求工具类:

swagger接口文档:

注意需要自己下载代码部署

3.2.将英文改为中文

3.3.登录接口修改

测试:

登录页面点击登录如下图说明登录成功

3.4.获取用户信息

主要实现原理是通过路由守卫实现

  // get user info
  getInfo({ commit, state }) {
    console.log('token=' + state.token)
    return new Promise((resolve, reject) => {
      getInfo(state.token).then(response => {
        console.log('response=', response)
        commit('SET_NAME', response.data.userName)
        // 用户头像,实际中应该从response.data 中取
        commit('SET_AVATAR', 'https://wpimg.wallstcn.com/f778738c-e4f8-4870-b634-56703b4acafe.gif')
        resolve(response)
      }).catch(error => {
        reject(error)
      })
    })
  },

3.5.退出功能实现

完美!

vue&element项目实战的更多相关文章

  1. 新书上线:《Spring Boot+Spring Cloud+Vue+Element项目实战:手把手教你开发权限管理系统》,欢迎大家买回去垫椅子垫桌脚

    新书上线 大家好,笔者的新书<Spring Boot+Spring Cloud+Vue+Element项目实战:手把手教你开发权限管理系统>已上线,此书内容充实.材质优良,乃家中必备垫桌脚 ...

  2. 在基于ABP框架的前端项目Vue&Element项目中采用电子签名的处理

    在前面随笔介绍了<在基于ABP框架的前端项目Vue&Element项目中采用电子签章处理文件和打印处理>的处理,有的时候,我们在流程中或者一些文件签署的时候,需要签上自己的大名,一 ...

  3. Vue公司项目实战步骤

    一.无权限,无验证的Vue项目 1.打好HTML+CSS+JS基础,及<Vue 2.0 实战> 2.编写用mock设计的案例: 3.将以上案例的后台用C#改写: 二.带安全验证的Vue项目 ...

  4. 在基于ABP框架的前端项目Vue&Element项目中采用日期格式处理,对比Moment.js和day.js的处理

    Day.js 是一个轻量的处理时间和日期的 JavaScript 库,和 Moment.js 的 API 设计保持完全一样. 如果您曾经用过 Moment.js, 那么您已经知道如何使用 Day.js ...

  5. 在基于ABP框架的前端项目Vue&Element项目中采用电子签章处理文件和打印处理

    在一些内部OA或者流转的文件,或者给一些客户的报价文件.合同,或者一些医院出示的给保险机构的病历资料等,有时候可能都希望快速的使用电子签章的处理方式来给文件盖上特定的印章,本篇随笔介绍基于Vue&am ...

  6. vue+webpack项目实战

    概述 -- 项目中会用到的插件 vue-router vue-resource 打包工具 webpack 依赖环境 node.js start 安装vue开发的模板 # 全局安装 vue-cli $ ...

  7. vue组件(Vue+webpack项目实战系列之三)

    组件(Component)是 Vue.js 最强大的功能之一.组件可以扩展 HTML 元素,封装可重用的代码.特别对于大型应用开发来说,尽量组件化,并且先造好轮子库,不要重复去写组件,这会显著提升项目 ...

  8. vue全家桶(Vue+Vue-router+Vuex+axios)(Vue+webpack项目实战系列之二)

    Vue有多优秀搭配全家桶做项目有多好之类的咱就不谈了,直奔主题. 一.Vue 系列一已经用vue-cli搭建了Vue项目,此处就不赘述了. 二.Vue-router Vue的路由,先献上文档(http ...

  9. 第10章-Vue.js 项目实战

    一.本节内容 掌握项目环境中路由的配置方法 ***** 熟练掌握编写单文件组件的编写 *** 能够使用swiper.js进行轮播图组件的封装 能够使用axios进行数据请求 二.webpack项目的目 ...

  10. Vue.js项目实战-多语种网站(租车)

    首先来看一下网站效果,想写这个项目的读者可以自行下载哦,地址:https://github.com/Stray-Kite/Car: 在这个项目中,我们主要是为了学习语种切换,也就是右上角的 中文/En ...

随机推荐

  1. PasteSpider的集群组件PasteCluster(让你的项目快速支持集群模式)的思路及实现(含源码)

    PasteSpider是什么? 一款使用.net编写的开源的Linux容器部署助手,支持一键发布,平滑升级,自动伸缩, Key-Value配置,项目网关,环境隔离,运行报表,差量升级,私有仓库,集群部 ...

  2. mapperTemp

    @Insert("INSERT INTO coxisolate.instanceinfo (instance_id, app_name, create_time, update_time, ...

  3. FFmpeg开发笔记(三十二)利用RTMP协议构建电脑与手机的直播Demo

    不管是传统互联网还是移动互联网,实时数据传输都是刚需,比如以QQ.微信为代表的即时通信工具,能够实时传输文本和图片.其中一对一的图文通信叫做私聊,多对多的图文通信叫做群聊. 除了常见的图文即时通信,还 ...

  4. android系统中log机制

    android系统中log机制 背景 习惯了Linux开发的我,转到安卓以后,对于安卓开发的很多问题没有经验.看到同事解决问题都会看logcat,因此有必要了解一下这些东西. 介绍 Android提供 ...

  5. 全志A40i+Logos FPGA开发板(4核ARM Cortex-A7)硬件说明书(下)

    前 言 本文档主要介绍板卡硬件接口资源以及设计注意事项等内容,测试板卡为创龙科技旗下的全志A40i+Logos FPGA开发板. 核心板的ARM端和FPGA端的IO电平标准一般为3.3V,上拉电源一般 ...

  6. ELK日志缺失问题排查-Logstash消费过慢问题

    1. 背景 另外一个推荐系统的推荐请求追踪日志,通过ELK收集,方便遇到问题时,可以通过唯一标识sid来复现推荐过程 在一次上线之后,发现日志大量缺失,缺失率达90%,确认是由上线引起的,但因为当时没 ...

  7. Java 方法中循环调用具有事务的方法

    在Java中,循环调用一个具有事务的方法时,需要特别注意事务的边界和管理.通常,事务的边界是由框架(如Spring)来控制的,确保方法执行时数据的完整性和一致性.然而,在循环中调用事务方法时,每个调用 ...

  8. ComfyUI进阶篇:ComfyUI核心节点(二)

    ComfyUI核心节点(二) 前言: 学习ComfyUI是一场持久战.当你掌握了ComfyUI的安装和运行之后,会发现大量五花八门的节点.面对各种各样的工作流和复杂的节点种类,可能会让人感到不知所措. ...

  9. AJAX基础+Axios快速入门+JSON使用+综合案例

    目录 1. AJAX 1.1 概述 1.1.1 作用 1.1.2 同步和异步 1.2 快速入门 1.2.1 服务端实现 1.2.2 客户端实现 1.3 案例 1.3.1 需求 1.3.2 分析 1.3 ...

  10. 拆解LangChain的大模型记忆方案

    之前我们聊过如何使用LangChain给LLM(大模型)装上记忆,里面提到对话链ConversationChain和MessagesPlaceholder,可以简化安装记忆的流程.下文来拆解基于Lan ...