后台管理系统(第一天)

这篇具有很好参考价值的文章主要介绍了后台管理系统(第一天)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1、后台管理系统项目简介
什么是后台管理系统项目?

在前端领域当中,开发后台管理系统项目,并非是Java,PHP等后台语言项目在前面课程当中,我们已经开发了一个项目【尚品汇电商平台项目】,这个项目主要针对的是用户(游客),可以让用户在平台当中购买产品。

但是你需要想明白一件事情,用户购买产品信息从何而来呀?比如:前台项目当中的数据来源于卖家(公司),但是需要注意的时候,卖家它不会数据库操作。对于卖家而言,需要把产品的信息上传于服务器,写入数据库。

卖家并非程序员,不会数据库操作(增删改查)。导致卖家,找了一个程序员,开发一个产品,可以让我进行可视化操作数据库(增删改查)

卖家(公司)组成:老板、员工。
老板:开发这个项目,对于老板而言,什么都可以操作。【产品的上架、产品的下架、查看员工的个人业绩、其他等等】
员工:可能就是查看个人业绩

2、后台管理系统:可以让用户通过一个可视化工具,可以实现对于数据库进行增删改查的操作。
而且需要注意,根据不同的角色(老板、员工),看到的、操作内容是不同的。

对于后台管理系统项目,一般而言,是不需要注册的。

模板介绍
简洁版: https://github.com/PanJiaChen/vue-admin-template (推荐)
加强版: https://github.com/PanJiaChen/vue-element-admin

1、解压后发现文件夹里没有node_modules文件夹,我们需要安装依赖npm install

2、在vue.config.js配置文件中添加配置lintOnSave:false

1

2

3

module.exports = {

  lintOnSave: false// eslint-loader 是否在保存的时候检查

}

然后我们运行一下---->去看他的package.json文件下"dev": "vue-cli-service serve",说明我们用dev来运行npm run dev

文件介绍

build
     ----index.js webpack配置文件【很少修改这个文件】
mock
    ----mock数据的文件夹【模拟一些假的数据mockjs实现的】,因为咱们实际开发的时候,利用的是真是接口

node_modules
     ------项目依赖的模块

public
     ------ico图标,静态页面,publick文件夹里面经常放置一些静态资源,而且在项目打包的时候webpack不会编译这个文件夹,原封不动的打包到dist文件夹里面

src
    -----程序员源代码的地方
    ------api文件夹:涉及请求相关的
    ------assets文件夹:里面放置一些静态资源(一般共享的),放在aseets文件夹里面静态资源,在webpack打包的时候,会进行编译
    ------components文件夹:一般放置非路由组件获取全局组件
    ------icons这个文件夹的里面放置了一些svg矢量图
    ------layout文件夹:他里面放置一些组件与混入
    ------router文件夹:与路由相关的
    -----store文件夹:一定是与vuex先关的
    -----style文件夹:与样式先关的
    ------utils文件夹:request.js是axios二次封装文件****
    ------views文件夹:里面放置的是路由组件

App.vue:根组件
main.js:入口文件
permission.js:与导航守卫先关、
settings:项目配置项文件
.env.development:开发环境的配置文件
.env.producation:生产环境的配置文件

后台管理系统API接口在线文档

最新后台文档swagger地址:
http://39.98.123.211:8510/swagger-ui.html#/

完成登录业务
静态组件完成
书写API(换成真实的接口)
axios二次封装
换成真实接口之后需要解决代理跨域问题(解决代理跨域问题)

后台管理系统(第一天)
完成静态组件
修改里面的样式以及内容

这里修改了背景图片,以及把英文的都换成了中文
后台管理系统(第一天)

 把背景图片大小设置为100% 100%

.login-container {
  min-height: 100%;
  width: 100%;
  overflow: hidden;
  background: url(~@/assets/1.png);
  background-size: 100% 100%;

书写API(换成真实的接口)

这里之前登录的使用模拟的数据(mock),我们换成真实的接口

Swagger UI这里找接口

后台管理系统(第一天)

axios二次封装修改

import request from '@/utils/request'

export function login(data) {
    return request({
        url: '/admin/acl/index/login',
        method: 'post',
        data
    })
}

export function getInfo(token) {
    return request({
        url: '/admin/acl/index/info',
        method: 'get',
        params: { token }
    })
}

export function logout() {
    return request({
        url: '/admin/acl/index/logout',
        method: 'post'
    })
}

解决代理跨域问题 

devServer: {
        port: port,
        open: true,
        overlay: {
            warnings: false,
            errors: true
        },
        proxy: {
            "/dev-api": {
                target: "http://gmall-h5-api.atguigu.cn/",
                pathRewrite: { "^/dev-api": "" }
            }
        }
    },

完成退出登录业务

英文改成中文

 路由的搭建

后台管理系统(第一天)

// src/router/index.js

  { // 一级路由
    path:'/product',
    component:Layout, // 在Layout的骨架下!!
    name:'Product',
    meta:{title:'商品管理',icon:'el-icon-goods'}, // // title是设置侧边栏的文字
    children:[
      // 二级路由
      {
        path:'trademark',
        name:'TradeMark',
        component:()=>import('@/views/product/tradeMark'),
        meta:{title:'品牌管理'},
      },
      {
        path:'attr',
        name:'Attr',
        component:()=>import('@/views/product/Attr'),
        meta:{title:'平台属性管理'},
      },
      {
        path:'spu',
        name:'Spu',
        component:()=>import('@/views/product/Spu'),
        meta:{title:'Spu管理'},
      },
      {
        path:'sku',
        name:'Sku',
        component:()=>import('@/views/product/Sku'),
        meta:{title:'Sku管理'},
      },
    ],
  },

 路由的呈现

 后台管理系统(第一天)

 完成品牌管理业务tradeMark

后台管理系统(第一天)

 由于后端将图片路径改变了,所以图片显示不出来

首先完成品牌管理业务之前,需要完成静态组件

1、添加button按钮

​

<!-- 按钮 -->
<el-button type="primary" icon="el-icon-plus" style="margin:10px 0">添加</el-button>

​

2、表格(按列排布)

 <!-- 表格组件 -->
 <el-table border>
   <el-table-column label="序号" width="80" align="center"></el-table-column>
   <el-table-column label="品牌类型" align="center"></el-table-column>
   <el-table-column label="品牌LOGO" align="center"></el-table-column>
   <el-table-column label="操作" align="center"></el-table-column>
 </el-table>

总共有四列,每列代表不同的意思

3、分页器

    <!-- 分页器 -->
    <!--@size-change="handleSizeChange"
      @current-change="handleCurrentChange" -->
    <el-pagination
      :current-page="6"
      :page-sizes="[3, 5, 10]"
      :page-size="3"
       layout=" prev, pager, next, jumper,->,sizes, total"
      :total="90"
      style="margin-top:20px;text-align:center"
    >
    </el-pagination>

书写相关API接口 

//  src/api/product/tradeMark.js
// 品牌管理的相关接口

// 我们发请求需要用的是封装好的axios
import request from '@/utils/request'
// 获取品牌分页列表数据    dev-api/admin/product/baseTrademark/{page}/{limit}      GET    
export const reqTradeMarkList = (page, limit) => {
    return request({ url: `dev-list/admin/product/baseTrademark/${page}/${limit}`, method: 'GET' })
}

 接口统一暴露

import * as trademark from './product/tradeMark'
import * as attr from './product/attr'
import * as sku from './product/sku'
import * as spu from './product/spu'

//对外暴露
export default {
    trademark,
    attr,
    sku,
    spu
}

 放在Vue的原型对象中,使得可以任意使用这个接口函数

//   src/main.js
// 引入相关API请求接口---挂载在原型上
import API from '@/api/index'
// 组件实例的原型的原型指向的是Vue.prototype
// 任意组件可以使用API相关的接口
Vue.prototype.$API = API;

 发送请求,获取到相应的数据

mounted() {
    this.getPageList();
  },
  methods: {
    async getPageList(pager = 1) {
      this.page = pager;
      const { page, limit } = this;
      let result = await this.$API.trademark.reqTradeMarkList(page, limit);
      console.log(result);
      if (result.code == 200) {
        this.total = result.data.total;
        this.list = result.data.records;
      }
    },
}

第一列 我们要展示的是序列号,可以用 type="index"表示从1 开始展示索引号

第二列 我们展示的是品牌类型,在list 里面的tmName,我们可以用prop:对应列内容的字段名

第三列 展示的是品牌logo,是个图片,我们有地址,我们可以用【作用域插槽】来展示图片

​ slot-scope="{ row, $index }"代表的是子组件回传过来的数据,也就是list

​ 然后我们进行动态展示图片:src

 第四列 有两个按钮

<el-table style="width: 100%" border :data="list">
      <el-table-column
        type="index"
        label="序号"
        width="80px"
        align="center"
      ></el-table-column>
      <el-table-column
        prop="tmName"
        label="品牌名称"
        width="width"
      ></el-table-column>
      <el-table-column prop="logoUrl" label="品牌LOGO" width="width">
        <template slot-scope="{ row, $index }">
          <img src="row.logoUrl" alt="" style="width: 100px; height: 100px" />
        </template>
      </el-table-column>
      <el-table-column prop="prop" label="操作" width="width">
        <template slot-scope="{ row, $index }">
          <el-button
            type="warning"
            icon="el-icon-edit"
            size="mini"
            @click="updateTradeMark"
            >修改</el-button
          >
          <el-button type="danger" icon="el-icon-delete" size="mini"
            >删除</el-button
          >
        </template>
      </el-table-column>
    </el-table>

分页器 

    <el-pagination
      :current-page="page"
      :page-sizes="[3, 5, 10]"
      :page-size="limit"
      layout=" prev, pager, next, jumper,->,sizes, total"
      :total="total"
      style="margin-top: 20px; text-align: center"
      :page-count="7"
    >
    </el-pagination>

 完成相关点击事件

 文章来源地址https://www.toymoban.com/news/detail-449023.html

    // 点击页码进行切换
    handleCurrentChange(pager) {
      // pager你点击的页数
      // 修改参数,然后再发请求
      this.page = pager ;
      this.getPageList();
    },

到了这里,关于后台管理系统(第一天)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 项目讲解之火爆全网的开源后台管理系统RuoYi

    博主是在2018年中就接触了 RuoYi 项目 这个项目,对于当时国内的开源后台管理系统来说,RuoYi 算是一个完成度较高,易读易懂、界面简洁美观的前后端不分离项目。 对于当时刚入行还在写 jsp 模板的博主来说,RuoYi 项目在后台基础功能、模块划分、易用性和页面美观度上,对

    2024年02月02日
    浏览(58)
  • 超适合练手的一套JavaWeb项目 (超市后台管理系统)

    1.搭建一个maven web项目 2.配置Tomcat 3.测试项目是否能够跑起来 4.导入项目中遇到的jar包 5.创建项目结构 1.数据库配置文件 db.properties文件代码 2.编写数据库的公共类 java代码 3.编写字符编码过滤器 xml代码 java dao层接口代码 java dao接口的实现类代码 java service接口代码

    2024年02月05日
    浏览(50)
  • 微信小程序项目实例SSM项目小程序运动减肥+后台管理系统

     🍅文末获取联系🍅 目录 一、项目介绍  3.1可行性分析 3.1.1技术可行性 3.1.2经济可行性 3.1.3操作可行性 3.2网站性能需求分析 3.3网站功能分析 3.4系统流程的分析 3.4.1 用户管理的流程 二、截图  三、源码获取 计算机毕业设计微信小程序毕设项目之运动减肥+后台管理系统_哔

    2024年02月06日
    浏览(61)
  • 开源项目学习:若依RuoYi-Vue后台管理系统【环境搭建】

    第一章 环境搭建 第二章 项目运行 第三章 阅读源码:例子-新增用户接口 第四章 基于ruoyi-vue开发新项目 本文尽量贴近零基础入门,献给初入门的学弟学妹们! 文章基本流程:环境配置→运行项目→阅读源码 安装环境时最好修改安装路径! Java开发必备! JDK下载:http://www

    2023年04月19日
    浏览(56)
  • Vue+SpringBoot后台管理系统:Vue3+TypeScript项目搭建(一)

    查看Note版本 查看npm版本 然后将npm升级至最新版本 将npm下载源换至http://registry.npm.taobao.org 可以在后续的npm下载提高下载速度 安装vue cli node版本v18.16.1 vue-cli版本v5.0.8 创建项目命令 vue_typescript_elementplus_demo 是项目名,可以自定义 选择 Manually select features ,进行自定义 然后选择

    2024年02月13日
    浏览(84)
  • Vue + Element-ui实现后台管理系统---项目搭建 + ⾸⻚布局实现

    目录:导读 项目搭建 + ⾸⻚布局实现 一、项目搭建 1、环境搭建 2、项目初期搭建 二、Main.vue 三、左侧栏部分(CommonAside.vue) 四、header部分(CommonHeader.vue) 五、Home.vue 写在最后 这篇主要讲解 项目搭建 + 后台⾸⻚布局实现 : 整体效果 后台首页按布局一共包含3个部分: 1、左侧栏

    2024年02月02日
    浏览(52)
  • 【项目实战】基于Vue3+TypeScript+Pinia的后台管理系统(coderwhy)

    是基于Vue3、Pinia、VueRouter、Vite、ElementPlus、TypeScript、Echarts等后台系统 https://documenter.getpostman.com/view/12387168/TzzDKb12 baseURL = ‘http://codercba.com:5000’ postman详细使用可以自己搜 也可以使用其他接口管理的工具 给项目添加 环境变量 baseURL https://gitee.com/yangyang993/vue3_ts_cms_admin.git 登录

    2024年02月07日
    浏览(70)
  • 项目实战-RuoYi后台管理系统-登录功能Postman接口自动化脚本分享

        先来回顾一下之前写过的关于RuoYi后台管理系统项目实战相关的几篇文章: 测试项目实战----RuoYi后台管理系统 项目实战-RuoYi后台管理系统-用户管理测试点设计 项目实战-RuoYi后台管理系统-登录相关接口分析 Docker搭建webdis用于提供api查询redis中的数据 项目实战-RuoYi后台管

    2023年04月20日
    浏览(46)
  • Vue--》Vue3打造可扩展的项目管理系统后台的完整指南(六)

    今天开始使用 vue3 + ts 搭建一个项目管理的后台,因为文章会将项目的每一个地方代码的书写都会讲解到,所以本项目会分成好几篇文章进行讲解,我会在最后一篇文章中会将项目代码开源到我的 GithHub 上,大家可以自行去进行下载运行,希望本文章对有帮助的朋友们能多多

    2024年02月10日
    浏览(45)
  • Vue--》Vue3打造可扩展的项目管理系统后台的完整指南(一)

    今天开始使用 vue3 + ts 搭建一个项目管理的后台,因为文章会将项目的每一个地方代码的书写都会讲解到,所以本项目会分成好几篇文章进行讲解,我会在最后一篇文章中会将项目代码开源到我的 GithHub 上,大家可以自行去进行下载运行,希望本文章对有帮助的朋友们能多多

    2024年02月06日
    浏览(57)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包