Vue实现侧边菜单栏手风琴效果实例代码


Posted in Javascript onMay 31, 2018

效果图如下所示:

Vue实现侧边菜单栏手风琴效果实例代码

Vue实现侧边菜单栏手风琴效果实例代码

<template> 
  <div class="asideBox"> 
   <aside> 
    <ul class="asideMenu"> 
     <li v-for="(item,index) in menuList"> 
      <div class="oneMenu" @click="showToggle(item,index)"> 
       <img v-bind:src="item.imgUrl" /> 
       <span>{{item.name}}</span> 
      </div> 
      <ul v-show="item.isSubShow"> 
       <li v-for="subItem in item.subItems"> 
        <div class="oneMenuChild">{{subItem.name}}</div> 
       </li> 
      </ul> 
     </li> 
    </ul> 
   </aside> 
  </div> 
</template>
export default { 
  data(){ 
   return{ 
    menuList:[ 
     { 
      name:'字符录入', 
      imgUrl:require('../assets/images/icon-character.png'), 
      isSubShow:false, 
      subItems:[ 
       { 
        name:'字符录入' 
       }, 
       { 
        name:'白话文录入' 
       }, 
       { 
        name:'文言文录入' 
       }, 
       { 
        name:'小写数字录入' 
       } 
      ] 
     }, 
     { 
      name:'票据数据录入', 
      imgUrl:require('../assets/images/icon-bill.png'), 
      isSubShow:false, 
      subItems:[ 
       { 
        name:'票据录入' 
       }, 
       { 
        name:'翻打传票' 
       }, 
      ] 
     }, 
     { 
      name:'交易码录入', 
      imgUrl:require('../assets/images/icon-transaction.png'), 
      isSubShow:false, 
      subItems:[ 
       { 
        name:'交易码录入' 
       }, 
       { 
        name:'交易名称录入' 
       }, 
      ] 
     }, 
     { 
      name:'操作码录入', 
      imgUrl:require('../assets/images/icon-operation.png'), 
      isSubShow:false, 
      subItems:[ 
       { 
        name:'操作码录入' 
       }, 
       { 
        name:'操作名称录入' 
       }, 
      ] 
     }, 
     { 
      name:'票据学习', 
      imgUrl:require('../assets/images/icon-billearn.png'), 
      isSubShow:false, 
      subItems:[ 
      ] 
     }, 
     { 
      name:'内部凭证学习', 
      imgUrl:require('../assets/images/icon-voucher.png'), 
      isSubShow:false, 
      subItems:[ 
      ] 
     }, 
     { 
      name:'现金管理学习', 
      imgUrl:require('../assets/images/icon-cash.png'), 
      isSubShow:false, 
      subItems:[ 
      ] 
     }, 
    ] 
   } 
  }, 
  methods:{ 
   // 点击展开折叠菜单事件 
   showToggle:function(item,ind){ 
    this.menuList.forEach(i => { 
     // 判断如果数据中的menuList[i]的show属性不等于当前数据的isSubShow属性那么menuList[i]等于false 
     if (i.isSubShow !== this.menuList[ind].isSubShow) { 
      i.isSubShow = false; 
     } 
    }); 
    item.isSubShow = !item.isSubShow; 
    console.log(item.name) 
   }, 
  } 
 }
<style lang="scss" scoped> 
 $menuBackColor:#f1f1f1; 
 $menuListH2:#8fbfef; 
 .asideBox{ 
  height: 100%; 
  width: 300px; 
  aside{ 
   background: $menuBackColor; 
   height: 100%; 
   .asideMenu{ 
    .oneMenu{ 
     height: 50px; 
     line-height: 50px; 
     font-size: 18px; 
     font-weight: normal; 
     color: #ffffff; 
     background: $menuListH2 url("../assets/images/icon-open.png") no-repeat 280px center; 
     border-bottom: 1px solid #669cd9; 
     img{ 
      width: 20px; 
      height: 20px; 
      margin: 15px 16px 15px 20px; 
      vertical-align: top; 
     } 
    } 
    .oneMenuChild{ 
     padding: 0 20px 0 60px; 
     height: 40px; 
     line-height: 40px; 
     background: $menuBackColor; 
     border-bottom: 1px solid #ffffff; 
     color: #454343; 
     font-size: 18px; 
    } 
   } 
  } 
 } 
</style>

总结

以上所述是小编给大家介绍的Vue实现侧边菜单栏手风琴效果实例代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
JavaScript中void(0)的具体含义解释
Feb 27 Javascript
document.designMode的功能与使用方法介绍
Nov 22 Javascript
一个可绑定数据源的jQuery数据表格插件
Jul 17 Javascript
怎样在JavaScript里写一个swing把数据插入数据库
Dec 10 Javascript
js由下向上不断上升冒气泡效果实例
May 07 Javascript
jQuery实现购物车表单自动结算效果实例
Aug 10 Javascript
jQuery实现的网页竖向菜单效果代码
Aug 26 Javascript
javascript每日必学之循环
Feb 19 Javascript
聊一聊jQuery插件uploadify使用方法
Aug 24 Javascript
jQuery弹出层插件popShow用法示例
Jan 23 Javascript
fetch 使用及如何接收JS传值
Nov 11 Javascript
如何编写一个d.ts文件的步骤详解
Apr 13 Javascript
Node.js笔记之process模块解读
May 31 #Javascript
Vue组件中prop属性使用说明实例代码详解
May 31 #Javascript
用JS实现根据当前时间随机生成流水号或者订单号
May 31 #Javascript
Vue2 轮播图slide组件实例代码
May 31 #Javascript
vue2.0+vuex+localStorage代办事项应用实现详解
May 31 #Javascript
JavaScript 中的12种循环遍历方法【总结】
May 31 #Javascript
Vue 让元素抖动/摆动起来的实现代码
May 31 #Javascript
You might like
php适配器模式介绍
2012/08/14 PHP
php代码审计比较有意思的例子
2014/05/07 PHP
php使用cookie保存用户登录的用户名实例
2015/01/26 PHP
PHP实现的网站目录扫描索引工具
2016/09/08 PHP
php mysql like 实现多关键词搜索的方法
2016/10/29 PHP
PHP编程计算文件或数组中单词出现频率的方法
2017/05/22 PHP
php获取是星期几的的一些常用姿势
2019/12/15 PHP
js css后面所带参数含义介绍
2013/08/18 Javascript
jquery使用append(content)方法注意事项分享
2014/01/06 Javascript
JavaScript框架(iframe)操作总结
2014/04/16 Javascript
js实现网页随机切换背景图片的方法
2014/11/01 Javascript
js+div实现文字滚动和图片切换效果代码
2015/08/27 Javascript
jQuery获取访问者IP地址的方法(基于新浪API与QQ查询接口)
2016/05/25 Javascript
原生JS实现层叠轮播图
2017/05/17 Javascript
vue之数据交互实例代码
2017/06/16 Javascript
JavaScript实现的反序列化json字符串操作示例
2018/07/18 Javascript
Electron 如何调用本地模块的方法
2019/02/01 Javascript
10种JavaScript最常见的错误(小结)
2019/06/21 Javascript
Python实现简单截取中文字符串的方法
2015/06/15 Python
python3个性签名设计实现代码
2018/06/19 Python
Python实现将数据写入netCDF4中的方法示例
2018/08/30 Python
从运行效率与开发效率比较Python和C++
2018/12/14 Python
Python+OpenCV+图片旋转并用原底色填充新四角的例子
2019/12/12 Python
pygame实现弹球游戏
2020/04/14 Python
深入理解Python变量的数据类型和存储
2021/02/01 Python
html5适合移动应用开发的12大特性
2014/03/19 HTML / CSS
印度化妆品购物网站:Nykaa
2018/07/22 全球购物
农业大学毕业生的个人自我评价
2013/10/11 职场文书
高级工程师岗位职责
2013/12/15 职场文书
客服部工作职责范本
2014/02/14 职场文书
公司联欢晚会主持词
2014/03/22 职场文书
松材线虫病防治方案
2014/06/15 职场文书
2014党支部对照检查材料思想汇报
2014/10/05 职场文书
项目备案申请报告
2015/05/15 职场文书
浅析Django接口版本控制
2021/06/26 Python
SpringBoot工程下使用OpenFeign的坑及解决
2021/07/02 Java/Android