1.vue2.0 封装 侧滑菜单组件

Sidebar.vue

  1. <!-- 侧滑菜单 组件 -->
  2. <template>
  3. <div>
  4. <transition name="fold">
  5. <div class="sidebar" v-show="sidebarShow">
  6. 侧滑菜单
  7. </div>
  8. </transition>
  9. <transition name="fade">
  10. <div class="mask" @click.stop.prevent="hide" v-show="sidebarShow"></div>
  11. </transition>
  12. </div>
  13. </template>
  14.  
  15. <script type="text/ecmascript-6">
  16. export default {
  17. //接收父组件传值
  18. props: {
  19. sidebarShow: {
  20. type: Boolean,
  21. default: false
  22. }
  23. },
  24. data() {
  25. return {
  26. data: [] //初始化数据
  27. }
  28. },
  29. //生命周期创建观察数据
  30. created() {
  31.  
  32. },
  33. //观察路由跳转更新数据
  34. watch: {
  35.  
  36. },
  37. methods: {
  38. //隐藏侧边栏,向上派发事件(向父组件传值)
  39. hide() {
  40. this.$emit('hideSidebar', false);
  41. }
  42. },
  43. computed: {
  44.  
  45. },
  46. //注册组件
  47. components: {
  48.  
  49. }
  50. }
  51. </script>
  52.  
  53. <style lang="less" scoped>
  54. .sidebar{
  55. position: fixed;
  56. top: 0px;
  57. right: 0px;
  58. z-index: 50;
  59. height: 100%;
  60. width: 230px;
  61. // background-color: rgb(35, 42, 48);
  62. background-color: #fff;
  63. transform: translate3d(0, 0, 0);
  64. }
  65. .mask{
  66. position: fixed;
  67. top: 0px;
  68. left: 0px;
  69. width: 100%;
  70. height: 100%;
  71. z-index: 40;
  72. background: rgba(7, 17, 27, 0.6);
  73. opacity: 1;
  74. &.fade-enter-active, &.fade-leave-active{
  75. transition: all 0.5s;
  76. }
  77. &.fade-enter, &.fade-leave-active{
  78. opacity: 0;
  79. }
  80. }
  81. </style>

2.父组件 调用

home.vue

  1. <!-- 首页 -->
  2. <template>
  3. <div>
  4. <!-- 头部 -->
  5. <mt-header title="综合管理平台">
  6. <!-- 点击按钮 显示侧滑菜单 -->
  7. <mt-button icon="more" @click="showSide" slot="right"></mt-button>
  8. </mt-header>
  9. <!-- 侧滑菜单 -->
  10. <mSidebar :sidebarShow="sidebarShow" v-on:hideSidebar="setSidebar"></mSidebar>
  11. </div>
  12. </template>
  13.  
  14. <script>
  15. // 引入 侧滑菜单组件
  16. import mSidebar from '../../components/Sidebar.vue'
  17.  
  18. export default {
  19. name: 'home',
  20. components: {
  21. // 注册组件
  22. mSidebar
  23. },
  24. data() {
  25. return {
  26. sidebarShow:false // 默认值
  27. }
  28. },
  29. created() {
  30.  
  31. },
  32. methods: {
  33. // 显示 侧滑菜单
  34. showSide(){
  35. this.sidebarShow = true;
  36. },
  37. // 接收 Sidebar组件的返回值 隐藏 侧滑菜单
  38. setSidebar(val){
  39. this.sidebarShow = val;
  40. }
  41. }
  42. }
  43. </script>
  44.  
  45. <style lang="less" scoped>
  46.  
  47. </style>

3.效果图

vue2.X 自定义 侧滑菜单 组件的更多相关文章

  1. vue2.0 自定义 侧滑删除(LeftSlider)组件

    1.自定义侧滑删除组件 LeftSlider.vue <!-- 侧滑删除 组件 --> <template> <div class="delete"& ...

  2. 鸿蒙开源第三方组件——SlidingMenu_ohos侧滑菜单组件

    目录: 1.前言 2.背景 3.效果展示 4.Sample解析 5.Library解析 6.<鸿蒙开源第三方组件>文章合集 前言 基于安卓平台的SlidingMenu侧滑菜单组件(http ...

  3. Android之自定义侧滑菜单

    先来上图: 我们把主界面从左向右拉动,可以看到地下有一层菜单页,从透明渐渐变得不透明,从小渐渐变大,感觉上觉得菜单页是从屏幕外面被拉到屏幕中的.下面的代码实现这个DEMO: 首先是自定义控件Slidi ...

  4. Android 自定义View修炼-打造完美的自定义侧滑菜单/侧滑View控件

    一.概述 在App中,经常会出现侧滑菜单,侧滑滑出View等效果,虽然说Android有很多第三方开源库,但是实际上 咱们可以自己也写一个自定义的侧滑View控件,其实不难,主要涉及到以下几个要点: ...

  5. Android 自定义View修炼-仿QQ5.0 的侧滑菜单效果的实现

    有一段时间没有写博客了,最近比较忙,没什么时间写,刚好今天有点时间, 我就分享下,侧滑菜单的实现原理,一般android侧滑的实现原理和步骤如下:(源码下载在下面最后给出哈) 1.使用ViewGrou ...

  6. Android-自定义侧滑菜单

    效果图: 需要继承ViewGroup,因为包含了子控件,菜单子控件 与 主页面子控件 Activity Xml布局相关: <!-- 自定义侧滑菜单 SlideMenu --> <Li ...

  7. Android组件——使用DrawerLayout仿网易新闻v4.4侧滑菜单

    摘要: 转载请注明出处:http://blog.csdn.net/allen315410/article/details/42914501 概述        今天这篇博客将记录一些关于DrawerL ...

  8. antd Tree组件中,自定义右键菜单

    最近项目中,有一个需求是自定义antd的Tree组件的右键菜单功能. 直接上代码 class Demo extends Component { state = { rightClickNodeTree ...

  9. 如鹏网仿QQ侧滑菜单:ResideMenu组件的使用笔记整理+Demo

    ResideMenu菜单 课堂笔记: https://github.com/SpecialCyCi/AndroidResideMenu Github:如何使用开源组件1. 下载 下载方式: 1. 项目 ...

随机推荐

  1. Posix线程编程指南

    Posix线程编程指南 Posix线程编程指南... 1 一线程创建与取消... 2 线程创建... 2 1.线程与进程... 2 2. 创建线程... 2 3. 线程创建属性... 2 4. 创建的 ...

  2. 【VBA】全局数组定义

    [说明] 全局数组定义(写在Module的最上面) 'Array Public Arr_approver Public Arr_delegator Public Arr_Role

  3. CentOS7安装Elasticsearch5.5.3

    一.准备 安装Java环境,elasticsearch推荐安装java1.8.0_131或更高的版本,安装教程CentOS7安装JDK1.8 二.安装 CentOS下可以选择.tar.gz或rpm方式 ...

  4. Tortoise SVN 提示 clean up 然而 clean up 没卵用的解决方法

    当 svn 提示clean up时,而clean up 仍然没用的情况下 先下载 sqlite3.exe 然后 在svn目录下,.svn 隐藏文件夹中 有个 wc.db 的文件, 执行下面命令行  s ...

  5. 33个好用的图片轮显 jquery图片轮显

    原文发布时间为:2011-05-28 -- 来源于本人的百度文章 [由搬家工具导入] 我个人还是喜欢 jquery.recycle,比较通用。因为由美工设计好的轮显结构,如果套用下面,就感觉不是很方便 ...

  6. c#使用Split分割字符串的几种方法

    原文发布时间为:2009-03-07 -- 来源于本人的百度文章 [由搬家工具导入] 最近发现很多人在问在c#中使用Split等分割字符串的方法,今天有时间所以把使用Split等分割字符串的方法做了一 ...

  7. 在类中写reponse语句

    原文发布时间为:2009-06-18 -- 来源于本人的百度文章 [由搬家工具导入] 在类文件中不能直接使用response.write,需要使用 System.Web.HttpContext.Cur ...

  8. 【winform】基于UserControl实现webBrower组件时html页面元素加载及onclick事件监听实现

    [背景]基于System.Windows.Forms.UserControl实现的webBrower组件在html内使用window.external调用winform事件失败. [解决思路]借助wi ...

  9. Spring Boot学习——Spring Boot简介

    最近工作中需要使用到Spring Boot,但是以前工作中没有用到过Spring Boot,所以需要学习下Spring Boot.本系列笔记是笔者学习Spring Boot的笔记,有错误和不足之处,请 ...

  10. 学习总结——Postman做http接口功能测试

    Postman做各种类型的http接口测试 首先,做接口测试前要有明确的接口文档(e.g. http://test.nnzhp.cn/wiki/index.php?doc-view-59) ,假设已经 ...