位置: IT常识 - 正文

使用Vue来完成项目中的首页导航+左侧菜单(vue项目使用)

发布时间:2024-01-04
使用Vue来完成项目中的首页导航+左侧菜单

目录

1. 准备工作

2. 动态树

2.1 在配置请求路径

2.2 使用动态数据构建导航菜单

2.2.1 通过接口获取数据

2.2.3 通过后台获取的数据构建菜单导航

2.3 点击菜单实现路由跳转

2.3.1 创建书本管理组件

2.3.2 配置路由

2.3.3 修改LeftAside组件

2.3.4 修改Main组件

3. 系统首页配置

4. 表格数据显示

4.1 页面布局

4.2 查询并在表格中显示数据

4.3 实现分页


1. 🍓🍓🍓🍓准备工作创建测试数据库准备好后台服务接口,Moudel查询,和Book查询(支持分页)后台单元测试修改vue配置,使用真实环境

推荐整理分享使用Vue来完成项目中的首页导航+左侧菜单(vue项目使用),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:vue项目使用vconsole,vue项目使用rem,vue项目使用rem,vue项目怎么运行起来,vue在项目中怎么用的,用vue做一个简单的项目,vue项目使用rem,vue项目使用rem,内容如对您有帮助,希望把文章链接给更多的朋友!

2. 🍓🍓🍓🍓动态树2.1 🥭🥭在配置请求路径在src/api/action.js中配置获取动态树数据的请求路径export default {//服务器'SERVER': 'http://localhost:8080/webserver',//登陆请求'SYSTEM_USER_DOLOGIN': '/userMsg/userAction!login.action', //登陆//获取动态树数据请求'SYSTEM_MODULE_REQ': '/sysMsg/sysMsgAction!getModules.action',//获取完整的请求地址'getFullPath': k => { //获得请求的完整地址,用于mockjs测试时使用return this.SERVER + this[k];}}2.2 🥭🥭使用动态数据构建导航菜单2.2.1 🥭🥭通过接口获取数据LeftAside.vue: 🚀🚀测试,通过控制台查看数据是否正常获取:

🥭🥭2.2.3 通过后台获取的数据构建菜单导航🥭🥭2.2.3.1 先构建一级导航菜单LeftAside.vue: 页面效果:使用Vue来完成项目中的首页导航+左侧菜单(vue项目使用)

🥭🥭2.2.3.2 构建二级导航菜单LeftAside.vue:

🚀🚀页面效果:2.3 🥭🥭点击菜单实现路由跳转2.3.1🥭创建书本管理组件t_module_vue表中已经配置了功能url,为方便,将书本管理组件定义为BookList。如果使用其他名字则需要修改功能url配置,保持一致。2.3.2🥭 配置路由

 2.3.3🥭 修改LeftAside组件

2.3.4 🥭修改Main组件

3. 🍓🍓🍓🍓系统首页配置🚀🚀首先创建一个首页组件配置路由:配置首页菜单: 🚀🚀菜单图标可以到官网去查找。🚀🚀设置登录成功后默认显示系统首页:4.🍓🍓🍓🍓 表格数据显示4.1 🥭🥭页面布局页面上使用的面包屑,查询条件,表格,分页等空间,可以查看element-ui官网。该步骤主要关注页面布局,并没有绑定数据,编写完成后,观察页面效果。BookList.vue:<template> <div style="margin-left: 15px; margin-right: 15px;"> <!--面包屑--> <el-breadcrumb style="margin-top:15px;" separator="/"> <el-breadcrumb-item :to="{path: '/Home'}">首页</el-breadcrumb-item> <el-breadcrumb-item>书本管理</el-breadcrumb-item> </el-breadcrumb> <!--查询条件--> <el-form style="margin-top: 15px;" :inline="true" class="demo-form-inline"> <el-form-item label="书名"> <el-input placeholder="书名"></el-input> </el-form-item> <el-form-item> <el-button type="primary">查询</el-button> <el-button type="primary">新增</el-button> </el-form-item> </el-form> <!--表格--> <el-table style="width: 100%;" :border="true" max-height="550"> <el-table-column prop="id" label="编号" min-width="40" align="center"></el-table-column> <el-table-column prop="bookname" label="名称" min-width="100" align="center"></el-table-column> <el-table-column prop="price" label="价格" min-width="70" align="center"></el-table-column> <el-table-column prop="booktype" label="类型" min-width="70" align="center"></el-table-column> </el-table> <!--分页--> <div class="block" style="text-align:right;margin-top:10px;"> <el-pagination :page-sizes="[10, 20, 30, 40]" :page-size="100" layout="total, sizes, prev, pager, next, jumper" :total="400"> </el-pagination> </div> </div></template>4.2 🥭🥭查询并在表格中显示数据先不考虑分页,从后台接口获取数据并绑定到表格显示。🥭将查询书本信息的接口配置到api/action.js中//获取书本信息 'BOOKMSG_BOOKINFO_REQ':'/bookMsg/bookAction!getBooks.action',BookList.vue组件 图一: 🚀🚀template部分: 图二: 🚀🚀script部分 export default { name: 'BookList', data: function() { return { bookname: '', books: [] } }, methods: { qry: function() { let url = this.axios.urls.BOOKMSG_BOOKINFO_REQ; this.axios.post(url, { bookname: this.bookname }).then(resp => { console.log(resp); this.books = resp.data.data; }).catch(error => { console.log(error); }); } } }4.3 🥭🥭实现分页🚀🚀template部分: <!--分页--> <div class="block" style="text-align:right;margin-top:10px;"> <!-- @size-chang: 定义在每页显示的记录数变化时的处理函数 @current-change:当前页码发生变化时的处理函数,如点击页码或输入一个特定页码。 :current-page:指定当前页, :page-size:每页显示的记录数 layout: 布局,可以通过调整该项来调整显示内容 :total: 总记录数 --> <el-pagination background @size-change="handleSizeChange" @current-change="handleCurrentChange" :current-page="page" :page-sizes="[10, 20, 30, 40]" :page-size="rows" layout="total, sizes, prev, pager, next, jumper" :total="total"> </el-pagination> </div>🚀🚀script部分,图一 qry: function() { let url = this.axios.urls.BOOKMSG_BOOKINFO_REQ; this.axios.post(url, { bookname: this.bookname, //分页参数 page: this.page, rows: this.rows }).then(resp => { console.log(resp); this.books = resp.data.data; //获取总页数 this.total = resp.data.total; }).catch(error => { console.log(error); }); }🚀🚀script部分,图二://当每页显示的记录数发生变化时,设置当前页码为1,执行查询。 handleSizeChange: function(rows) { this.rows = rows; this.page = 1; this.qry(); }, //当前页码发生变化时,执行查询 handleCurrentChange: function(page) { this.page = page; this.qry(); }

VUE3.0有兴趣的小伙伴可以去看看

以上就是一个简单的首页导航+左侧菜单的介绍,欢迎各位大佬给点建议!
本文链接地址:https://www.jiuchutong.com/zhishi/285118.html 转载请保留说明!

上一篇:css - 如何禁用 <a> 标签点击,让 <a> 标签实现 disabled 禁用效果(鼠标无法触发点击事件)(css禁用button按钮)

下一篇:发财树的养殖方法和注意事项(图文)(发财树的养殖方法和浇水视频)

  • 微信交话费能打发票吗(微信上交话费可以打发票吗)

    微信交话费能打发票吗(微信上交话费可以打发票吗)

  • 朋友圈黑色心代表什么(朋友圈黑色的心什么意思)

    朋友圈黑色心代表什么(朋友圈黑色的心什么意思)

  • 闲鱼买家以尺码不合适退货(闲鱼买家尺码不合适退货)

    闲鱼买家以尺码不合适退货(闲鱼买家尺码不合适退货)

  • 苹果移动变成cmcc怎么回事(iphone变成cmcc)

    苹果移动变成cmcc怎么回事(iphone变成cmcc)

  • 199是虚拟号段吗(199号段属于虚拟号段吗)

    199是虚拟号段吗(199号段属于虚拟号段吗)

  • 删留言频繁怎么继续删(删留言操作过于频繁怎么回事)

    删留言频繁怎么继续删(删留言操作过于频繁怎么回事)

  • 华为笔记本和荣耀笔记本区别(华为笔记本和荣耀笔记本哪个更好)

    华为笔记本和荣耀笔记本区别(华为笔记本和荣耀笔记本哪个更好)

  • 充电器接口松动怎么办(充电器接口松动是怎么回事)

    充电器接口松动怎么办(充电器接口松动是怎么回事)

  • icloud无法同步是啥意思(icloude无法同步)

    icloud无法同步是啥意思(icloude无法同步)

  • 二级路由能减轻路由器压力吗(二级路由能减轻一级路由)

    二级路由能减轻路由器压力吗(二级路由能减轻一级路由)

  • 下框线在哪里设置(下框线是什么)

    下框线在哪里设置(下框线是什么)

  • 内存储器的容量是指(内存储器的容量是由________总线的宽度确定的)

    内存储器的容量是指(内存储器的容量是由________总线的宽度确定的)

  • qq看点怎么样保存视频(qq看点怎么保存图片到相册)

    qq看点怎么样保存视频(qq看点怎么保存图片到相册)

  • 华为mate30pro怎么截图(华为mate30pro怎么分屏)

    华为mate30pro怎么截图(华为mate30pro怎么分屏)

  • 华为锁屏时间怎么设置(华为锁屏时间怎么去掉)

    华为锁屏时间怎么设置(华为锁屏时间怎么去掉)

  • 戴尔笔记本网线插哪(戴尔笔记本网线转换器怎么连接宽带)

    戴尔笔记本网线插哪(戴尔笔记本网线转换器怎么连接宽带)

  • iphone11pro是不是双卡(iphone11pro是不是停产了)

    iphone11pro是不是双卡(iphone11pro是不是停产了)

  • 微信群里右上角的圆圈是什么(微信群右上角有个蓝色圈圈)

    微信群里右上角的圆圈是什么(微信群右上角有个蓝色圈圈)

  • 安卓手机怎么root教程(安卓手机怎么root改定位)

    安卓手机怎么root教程(安卓手机怎么root改定位)

  • etc有开关吗(etc有电源开关吗?)

    etc有开关吗(etc有电源开关吗?)

  • 高德地图没有语音播报怎么回事(高德地图没有语音助手)

    高德地图没有语音播报怎么回事(高德地图没有语音助手)

  • YOLOv8检测、分割和分类训练自己数据集(yolov3多分类检测)

    YOLOv8检测、分割和分类训练自己数据集(yolov3多分类检测)

  • 【绘图】比Matplotlib更强大:ProPlot(常用的绘图比例有哪些?)

    【绘图】比Matplotlib更强大:ProPlot(常用的绘图比例有哪些?)

  • OpenAI GPT-3模型详解(gpt3 模型大小)

    OpenAI GPT-3模型详解(gpt3 模型大小)

  • 4.6.2 万能转换器boost::lexical_cast(万能转换器mp4)

    4.6.2 万能转换器boost::lexical_cast(万能转换器mp4)

  • 个税预扣预缴扣除项目有哪些
  • 金税盘维护费应该计入什么科目
  • 增值税 普通税
  • 发票作废后对方不退回抵扣联怎么办
  • 小企业准则适用于什么企业
  • 实际缴纳所得税时应借记什么账户
  • 销售退回的货物应当由什么部门清点
  • 车船税不开发票怎么做账?
  • 工资表的其他扣除
  • 委托出口退税账务处理
  • 应付账款周转次数公式的理解
  • 个人户转账公户用途
  • 商品进销差价是资产类账户,其抵减的账户是
  • 已认证未抵扣发票冲红流程
  • 如何购买车辆保险
  • 企业所得税计提分录怎么写
  • 公账发工资是即时到账吗
  • 前期差错更正处理方法
  • 纳税信用被评为D级怎么办
  • 资产收购账务处理
  • 财务内账外账的优缺点
  • 对方转出没收到怎么办
  • 预提费用怎么理解
  • 可供出售金融资产会计处理
  • 高新技术企业取消资格的程序
  • 现金清查制度的内容包括
  • 利息保障倍数能反映企业偿债能力吗
  • 城镇地域
  • 一般纳税人不能转为小规模纳税人吗
  • bios 怎么进去
  • 简易征收做账
  • 什么叫绝地求生
  • 台式电脑组装过程视频
  • element ui datepicker 源码
  • pc direct
  • 股票交易税怎么算出来的
  • 业务招待费的税收金额怎么算
  • elements table
  • 落枕怎么办怎么治疗
  • 单位车辆车船使用税滞纳金如何交
  • php忘记密码功能
  • pyecharts怎么用
  • php gdb
  • 退回的工伤保险会计分录
  • 佣金怎么收税
  • phpcms v9 getshell
  • mongodb最新版本
  • mysql显示数据库中的表
  • 企业所得税多预缴了怎么办
  • 存货的计税基础公式
  • 政府补助属于不征税金吗
  • 购销合同没注明合同有效期
  • 公司认缴没有实缴会有什么风险
  • 税控系统设备可以全额抵扣吗
  • 合伙企业对外投资收益怎么纳税
  • 预收账款转收入的条件
  • 接手前往年的银行余额不平怎么办?
  • 多种不同的 MySQL 的 SSL 配置
  • apache系统服务启动不了
  • windows10创意者更新
  • linux 磁盘使用
  • 连接远程mq
  • 进程net1
  • w3dbsmgr.exe是什么进程
  • 苹果手机
  • js时间日期
  • set命令应用
  • 命令以管理员运行
  • nodejs怎么调试
  • js 实现跳转页面
  • 浏览器url怎么看
  • 安卓基于谷歌
  • js判断手机访问还是电脑访问
  • 如何强化理论武装
  • 建设工程需要缴纳哪些税
  • 网约车考试全国过了区域没过
  • 新疆维吾尔自治区民族团结进步工作条例
  • 税务注销证明样本
  • 小船载重多少
  • 百旺税控盘怎么安装开票软件
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号