当前位置: 首页 > news >正文

前后端分离-小项目-1前端布局

技术栈

前后端分离开发,前端主体框架Vue3+后端基础框架Spring-Boot

1.前端技术栈:Vue3+Axios+ElementPlus

2.后端技术栈:Spring Boot+MyBatis Plus

3.数据库-MySQL

4.项目的依赖管理-Maven

5.分页-MyBatis Plus的分页插件


环境搭建

  1. 安装Node.js LTS

node.js的npm,用于管理前端项目包依赖

cmd->node -v查看版本号,以检测是否安装。/如果没有安装,就查看以前的安装过程

  1. 创建Vue项目

  • 新建一个保存前端页面的文件夹,然后在该文件夹地址栏cmd->vue create springboot_vue

  • 选择

>Manually select features

  • 空格键选中*

*babel 默认勾选

*Router勾选

*Vuex 勾选

Linter / Formatter(默认,取消该选择) 要求严谨,不能有错,对新手不友善

  • 选择>vue3的项目

  • history model?y

  • placing config?包的管理方式>In package.json

  • 保存当前预设给将来使用preset?y

  • 保存预设命名为as:springboot_vue_stein

  • 整个过程注意保持网络畅通。如果出现问题,重新走一遍。

  • 完成后执行提示的两个语句。先cd,在npm

  • 然后按提示地址能够访问页面便成功了。

  1. 使用idea打开springboot._vue项目,并配置项目启动

1)直接将springboot._vue项目拖到idea

2)配置springboot_vue使用npm方式启动

  • 点开组件栏的“启动框”选择Edit Configurations...

  • 左上角“+”号,找到npm

  • 右边窗口:Scripts:serve。然后Apply、Ok

  1. 我们会使用到element-plus,停止项目,安装element-plus插件

element-plus官方文档--https://element-plus.gitee.io/#/zh-CN/component/layout,指南->安装,找到下面这个安装指令。在该项目下执行安装指令。

  • 安装包管理器

# NPM
$ npm install element-plus --save
  1. 配置Vue服务端口

在vue.config.js里面配置端口号。重新运行npm即可

module.exports = {devServer: {port: 10000}
}

创建基础页面

目标:使用Vue3+ElementPlus完成该界面

实现过程:

  1. 清除不用内容和组件

  • 清空App.vue

  • 清理HomeView

  • 删除HelloWorld.vue,

  1. 创建Header.vue

  1. 创建全局global.css,以备后用

  1. 在main.js引入global.css


Element-Plus的使用

引入Element-Plus

  • 可以参考文档,实际不重复的部分如下。main.js修改

import ElementPlus from 'element-plus'
import 'element-plus/dist/index.css'
.use(ElementPlus)
  • App.vue。添加按钮,测试是否能正常使用。

<template><Header/>Home<el-button>我的按钮</el-button> #添加了该行
</template>
  • 增加右上角个人设置。Header.vue里面添加

<el-dropdown>伪代码:该部分中间的内容。参看文档</el-dropdown>
  • 左侧边栏,新建组件Aside.vue。参见Menu菜单->侧栏

<el-menu>标签内的代码
  • 固定宽度,避免打开/关闭导航栏,引起来回缩进

  <el-menu  style="width:200px">
  • App.vue三分页面。头左右。需要引入前面写好的Aside

<template><div><!--头--><Header/><div style="display: flex"><!--左侧边栏--><Aside/><!--右侧显示内容--><router-view style="flex:1"/></div></div>
</template>
  • 测试右侧展示页面HomeView.vue

  • HomeView添加el-button即可查看

<el-button>测试按钮</el-button>
  • HomeView.vue引入表格内容

  • 引入表格元素

  • sortable 加入可排序属性

    <el-table:data="tableData"style="width: 100%"><el-table-column prop="date" sortable label="Date" width="180" /><el-table-column prop="name" label="Name" width="180" /><el-table-column prop="address" label="Address" /></el-table></div>
  • 关联数据。注意数据的格式。data(){return{keyword:[ ]

export default {
//新增内容:添加数据池。注意格式
,data(){return{tableData:[{date: '2016-05-03',name: 'Tom',address: 'No. 189, Grove St, Los Angeles',},{date: '2016-05-02',name: 'Tom',address: 'No. 189, Grove St, Los Angeles',},{date: '2016-05-04',name: 'Tom',address: 'No. 189, Grove St, Los Angeles',},{date: '2016-05-01',name: 'Tom',address: 'No. 189, Grove St, Los Angeles',},
]}}
}
  • 国际化。参看文档->指南->国际化

添加引入,修改使用,注意合并重复的语句。然后页面可以看到中文提示

import zhCn from 'element-plus/dist/locale/zh-cn.mjs'app.use(ElementPlus, {locale: zhCn,
})
  • 添加固定列表格

  • 自定义内容需要使用该行数据时,声明#default="scope'",再通过scope.row获取数据。

  • 插槽机制。可以拿到其他行的数据来进行修改

      <el-table-column fixed="right" label="操作" width="120"><template #default="scope"><el-button link type="primary" size="small" @click="handleEdit(scope.row)">编辑</el-button><el-button link type="primary" size="small">删除</el-button></template></el-table-column>
  • 编写handleEdit()方法

  • 待完善

  • 添加新增、其他按键

<div style="margin:5px 2px"><el-button type="primary">新增</el-button><el-button>其他</el-button></div>
  • 添加搜索栏

 <div style="margin-left: 2px"><el-input v-model="input" style="width:260px" placeholder="请输入关键字"/><el-button style="margin-left: 5px" type="primary">查询</el-button></div>

相关文章:

前后端分离-小项目-1前端布局

技术栈前后端分离开发&#xff0c;前端主体框架Vue3后端基础框架Spring-Boot1.前端技术栈&#xff1a;Vue3AxiosElementPlus2.后端技术栈&#xff1a;Spring BootMyBatis Plus3.数据库-MySQL4.项目的依赖管理-Maven5.分页-MyBatis Plus的分页插件环境搭建安装Node.js LTSnode.j…...

基于jsp的网络电子相册的设计与实现

技术&#xff1a;Java、JSP等摘要&#xff1a;随着科学技术的不断进步&#xff0c;云技术以及大数据的不断完善&#xff0c;越来越多的网络忠实用户告别了冲洗相片的时代&#xff0c;他们更喜欢将相片上传至网络&#xff0c;这样就省去了携带和查找的麻烦&#xff0c;随时随地只…...

Python快速上手系列--类--详解篇

本章是自动化测试的真正开始&#xff0c;因为在后续的过程中&#xff0c;你会接触到unittest框架&#xff0c;pytest框架&#xff0c;而不仅仅只是写一个函数selenium脚本这么简单了。1、创建类1.1、了解类我们首先了解一下&#xff0c;为什么要使用类&#xff0c;类可以拿来干…...

Dubbo基本原理和用法讲解

Dubbo基本原理和用法讲解 序言&#xff1a;学习一项新技术&#xff0c;一般从是什么、为什么、怎么用三个方面进行学习。本篇文章也不例外&#xff0c;笔者将从Dubbo是什么&#xff1f;、为什么会产生Dubbo技术&#xff1f;、如何在项目中使用Dubbo技术。最后&#xff0c;笔者…...

TCP详解及面试相关问题

文章目录1、计算机模型2、客户端和服务端通信——TCP协议&#xff08;1&#xff09;socket套接字&#xff08;2&#xff09;TCP三次握手——创建socket&#xff08;3&#xff09;连接的本质&#xff08;4&#xff09;TCP四次挥手——释放socket资源&#xff08;5&#xff09;TC…...

LVGL V9.0基于VS2022仿真搭建

完整Demo&#xff0c;lvgl,lvgl_drivers相关资料下载 链接&#xff1a;https://pan.baidu.com/s/1DNJeHdoaPyfe1BsLb9wjRg 提取码&#xff1a;wov7 其它资料下载 链接&#xff1a;https://pan.baidu.com/s/1nV9jojPEPWSWZdYhaCZWTA 提取码&#xff1a;91j8 下载资料后解压文…...

多线程面试题开胃菜2(5道)

一.一个线程的生命周期有哪几种状态&#xff1f;它们之间如何流转的&#xff1f;NEW&#xff1a;毫无疑问表示的是刚创建的线程&#xff0c;还没有开始启动。RUNNABLE: 表示线程已经触发 start()方式调用&#xff0c;线程正式启动&#xff0c;线程处于运行中状态。BLOCKED&…...

第三次作业

一、单表查询素材&#xff1a; 表名&#xff1a;worker-- 表中字段均为中文&#xff0c;比如 部门号 工资 职工号 参加工作 等CREATE TABLE worker (部门号 int(11) NOT NULL,职工号 int(11) NOT NULL,工作时间 date NOT NULL,工资 float(8,2) NOT NULL,政治面貌 varchar(10) N…...

基础算法(直接插入,希尔排序,快排,归并,折半查找)

/*直接插入&#xff1a;把待排序序列分为有无序区和和无序区&#xff0c;使用无序区的数据一次插入倒有序区中&#xff0c;最终结果尾有序序列 1> 把数据分为有序区和无序区&#xff0c;默认第一个元素在有序区&#xff0c;剩下在无序区 2> 外层循环&#xff0c;循环无…...

电子学会2022年12月青少年软件编程(图形化)等级考试试卷(一级)答案解析

目录 一、单选题(共25题&#xff0c;共50分) 二、判断题(共10题&#xff0c;共20分) 三、编程题(共2题&#xff0c;共30分) 青少年软件编程&#xff08;图形化&#xff09;等级考试试卷&#xff08;一级&#xff09; 一、单选题(共25题&#xff0c;共50分) 1. 小明想在开始…...

基于JAVA的超级玛丽设计与实现

技术&#xff1a;Java等摘要&#xff1a;随着计算机技术及网络技术的不断发展&#xff0c;电子游戏越来越普及。经典游戏“超级玛丽”因其本身所具有的娱乐性与教育意义而被人们广泛接受&#xff0c;在广大的青少年玩家中享有极高的知名度。Java语言作为一种完全面向对象的程序…...

硬件工程师入门基础知识(一)基础元器件认识(二)

硬件工程师入门基础知识 &#xff08;一&#xff09;基础元器件认识&#xff08;二&#xff09; tips&#xff1a;学习资料和数据来自《硬件工程师炼成之路》、百度百科、网上资料。 1.二极管 2.三极管 3.MOS管 4.IGBT 5.晶振 1.二极管 肖特基二极管和硅二极管的比较&#…...

Python-项目实战--贪吃蛇小游戏-游戏框架搭建(2)

1.游戏框架搭建介绍pygame开发图像界面游戏的几个要素&#xff0c;并且把贪吃蛇游戏的整体框架搭建完成本节知识点包括&#xff1a;pygame的初始化和退出游戏主窗口游戏循环和游戏时钟主窗口背景颜色绘制文本pygame的坐标系游戏事件监听绘制图形定时器事件1.1pygame的初始化和退…...

JVM基础

JVM基础 1.JVM的位置 JVM是运行在操作系统之上的&#xff0c;它与硬件没有直接的交互 2.JVM体系结构图 这个区域一定不会有垃圾回收 所谓JVM的调优&#xff0c;其实就是在调这个区域&#xff0c;而且99%情况下都在调堆 ! 3.类加载器ClassLoader 先来看看一个类加载到 JVM 的…...

Android 内存优化(基础轮)必看~

本次分享主要分为五个部分内容&#xff0c;第一部分内容是 5W2H 分析内存优化&#xff0c;第二部分内容是内存管理机制&#xff0c;第三部分内容是内存优化 SOP&#xff0c;第四部分内容是 内存优化指导原则&#xff0c; 最后一部分内容是总结与展望。 如果学完内存优化的基础论…...

STM32单片机GSM短信自动存取快递柜

实践制作DIY- GC0104-自动存取快递柜 一、功能说明&#xff1a; 基于STM32单片机设计-自动存取快递柜 二、功能介绍&#xff1a; STM32F103C系列最小系统板0.96寸OLED显示器DY-SV17F串口语音播报模块4*4矩阵键盘GSM短信模块4路舵机&#xff08;模拟4个柜子&#xff09; ***…...

力扣(LeetCode)410. 分割数组的最大值(2023.02.12)

给定一个非负整数数组 nums 和一个整数 m &#xff0c;你需要将这个数组分成 m 个非空的连续子数组。 设计一个算法使得这 m 个子数组各自和的最大值最小。 示例 1&#xff1a; 输入&#xff1a;nums [7,2,5,10,8], m 2 输出&#xff1a;18 解释&#xff1a; 一共有四种方法…...

管理还原数据

还原数据还原数据是&#xff1a;• 原始的、修改之前的数据副本• 针对更改数据的每个事务处理而捕获• 至少保留到事务处理结束• 用于支持&#xff1a;– 回退操作– 读取一致性查询– Oracle 闪回查询、Oracle 闪回事务处理和 Oracle 闪回表– 从失败的事务处理中进行恢复存…...

c的关键字有那些

编程语言中的关键字 C语言简洁、紧凑&#xff0c;使用方便、灵活。ANSI C标准C语言共有32个关键字&#xff0c;9种控制语句&#xff0c;程序书写形式自由&#xff0c;区分大小写。把高级语言的基本结构和语句与低级语言的实用性结合起来。 C 语言可以像汇编语言一样对位、字节和…...

链表OJ(一)

目录 从尾到头打印链表_牛客题霸_牛客网 160. 相交链表 141. 环形链表 142. 环形链表 II 138. 复制带随机指针的链表 从尾到头打印链表_牛客题霸_牛客网 输入一个链表的头节点&#xff0c;按链表从尾到头的顺序返回每个节点的值&#xff08;用数组返回&#xff09;。 如输入…...

MySQL第三次作业

1、显示所有职工的基本信息。 2、查询所有职工所属部门的部门号&#xff0c;不显示重复的部门号。 3、求出所有职工的人数。 4、列出最高工和最低工资。 5、列出职工的平均工资和总工资。 6、创建一个只有职工号、姓名和参加工作的新表&#xff0c;名为工作日期表…...

Python中的类和对象(7)

1.私有变量 在大多数面向对象的编程语言中&#xff0c;都存在着私有变量&#xff08;private variable&#xff09;的概念&#xff0c;所谓私有变量&#xff0c;就是指通过某种手段&#xff0c;使得对象中的属性或方法无法被外部所访问。 Python 对于私有变量的实现是引入了一…...

【JVM】7种经典的垃圾收集器

文章目录1. 垃圾收集器概述2. Serial 收集器3. ParNew 收集器4. Paraller Scavenge 收集器5. Serial Old收集器6. Parller Old收集器7. CMS 收集器8. Garbage First 收集器本文参考&#xff1a;深入理解Java虚拟机&#xff1a;JVM高级特性与最佳实践&#xff08;第3版&#xff…...

2023/2/12总结

滑动窗口&#xff08;1&#xff09;滑动窗口是一种基于双指针的思想&#xff0c;两个指针指向的元素形成一个窗口。一般用于求取数组或字符串的某个子串、子序列、最长最短等最值或者求某个目标值时&#xff0c;并且该问题本身可以通过暴力解决。滑动窗口分为固定窗口和不定窗口…...

Linux之正则表达式

正则表达式是组成“操作”的基本语法&#xff0c;而这些“操作”是应用于Sed和Awk必备的能力。因此只有了解了正则表达式&#xff0c;才能学好Sed和Awk。正则表达式分为基础正则表达式&#xff08;Regular Expression&#xff09;与扩展正则表达式&#xff08;Extended Regular…...

前端高频面试题-HTML和CSS篇(一)

&#x1f4bb; 前端高频面试题-HTML和CSS篇&#xff08;一&#xff09; &#x1f3e0;专栏&#xff1a;前端面试题 &#x1f440;个人主页&#xff1a;繁星学编程&#x1f341; &#x1f9d1;个人简介&#xff1a;一个不断提高自我的平凡人&#x1f680; &#x1f50a;分享方向…...

Redis 专题总结

1. 什么是Redis &#xff1f; 处理&#xff1a;内容缓存&#xff0c;主要用于处理大量数据的高访问负载。Redis是一款高性能的NOSQL系列的非关系型数据库&#xff0c;NoSQL(NoSQL Not Only SQL)&#xff0c;意即“不仅仅是SQL”&#xff0c;是一项全新的数据库理念&#xff0…...

【Python百日进阶-Web开发-Vue3】Day515 - Vue+ts后台项目2:登录页面

文章目录 一、创建登录路由1.1 安装 Vue VSCode Snippets插件1.2 处理路径引用的红色波浪线1.3 入口文件 main.ts1.4 主组件 App.vue1.5 路由文件 router/index.ts1.6 首页组件 views/HomeView.vue1.7 登录组件 views/LoginView.vue二、实现登录页面的表单展示2.1 element-plus…...

【博客620】prometheus如何优化远程读写的性能

prometheus如何优化远程读写的性能 场景 为了解决prometheus本地存储带来的单点问题&#xff0c;我们一般在高可用监控架构中会使用远程存储&#xff0c;并通过配置prometheus的remote_write和remote_read来对接 远程写优化&#xff1a;remote_write 远程写的原理&#xff1a…...

redis可视工具AnotherRedisDesktopManager的使用

redis可视工具AnotherRedisDesktopManager的使用 简介 Another Redis DeskTop Manager 是一个开源项目&#xff0c;提供了以可视化的方式管理 Redis 的功能&#xff0c;可供免费下载安装&#xff0c;也可以在此基础上进行二次开发&#xff0c;主要特点有&#xff1a; 支持 W…...

什么网站容易做百度权重/百度推广一年大概多少钱

参考博客 https://www.cnblogs.com/whatisfantasy/p/6440585.html1 概念梳理: 1.1 线程 1.1.1 什么是线程 线程是操作系统能够进行运算调度的最小单位。它被包含在进程之中,是进程中的实际运作单位。一条线程指的是进程中一个单一顺序的控制流,一个进程中可以并发多个线程,…...

建设企业网站的具体步骤/地推拉新app推广接单平台

题目&#xff1a;原题链接&#xff08;中等&#xff09; 标签&#xff1a;哈希表、数组、双指针 解法时间复杂度空间复杂度执行用时Ans 1 (Python)实例化 : O(N)O(N)O(N) ; 计算 O(C1C2)O(C1C2)O(C1C2)&#xff08;其中C为向量中值的数&#xff09;O(C)O(C)O(C)1948ms (66.1…...

网站建设方案报价/东莞seo建站

武汉白云黄鹤站∶精华区发信人: aol (色拉油), 信区: WinDrvProgram 标 题: UNIX下设备驱动程序的基本结构[zz] 发信站: 武汉白云黄鹤站 (2001年05月13日19:54:12 星期天), 转信 UNIX下设备驱动程序的基本结构 作者:rose 作者:rose 转自:Linux之家   在UNIX系统里&#xff0…...

网站开发的图片要求/广告公司推广软文

2018.05.05_day111、执行Python脚本的两种方式 第一种&#xff0c;在命令行输入“python 文件名” 第二种&#xff0c;从解释器打开脚本文件&#xff0c;并运行。2、简述位、字节的关系 位是计算机存储的最小单位&#xff0c;一个位要么是“0”要么是“1”&#xff0c;8个位等于…...

网站版权该怎么做呢/深圳企业网站制作公司

题目链接&#xff1a;http://acm.hdu.edu.cn/showproblem.php?pid1166 第一次做线段树&#xff0c;帆哥的一句话&#xff0c;我记下来了&#xff0c;其实&#xff0c;线段树就是一种处理数据查询和更新的手段。 然后&#xff0c;我的代码风格&#xff0c;是网上的大牛们的辛苦…...

网站 宗旨/电子商务网站建设教程

职责链模式&#xff08;Chain of Responsibility&#xff09;&#xff1a;使多个对象都有机会处理请求&#xff0c;从而避免请求的发送者和接收者之间的耦合关系。将这些对象连成一条链&#xff0c;并沿着这条链传递该请求&#xff0c;直到有一个对象处理它为止。 1、Handler类…...