vue同个按钮控制展开和折叠同个事件操作

 更新时间:2020年07月29日 08:41:45   作者:指标满载  
这篇文章主要介绍了vue同个按钮控制展开和折叠同个事件操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

我就废话不多说了,大家还是直接看代码吧~

<el-button :icon="!moreshow?'el-icon-arrow-down':'el-icon-arrow-up'" @click="getmoreshow">{{!moreshow?更多:隐藏}}</el-button>

data() {
  return {
  moreshow:false,
  count:1,
  }
}
mounted() {
  this.getmoreshow()//避免点击两次才生效
},
methods: {
  getmoreshow(){
  if(this.count%2==0){
   this.moreshow=true
  }else{
   this.moreshow=false
  }
  this.count++
  },
}

补充知识:vue 可折叠面板的工作区组件

这个组件中使用了elementui的两个图标

组件Js:

Vue.component('work-container', {
  props: ['height'],
  data: function () {
    return {
      isCollapse: false
    }
  },
  computed: {
    topbarcssobj: function () {
      var obj = { padding: '3px' };
      if (this.isCollapse) {
        obj.display = 'none';
      }
      else {
        obj.display = 'block';
        if (this.height) {
          obj.height = this.height + 'px';
        } else {
          obj.height = '40px';
        }
      }
      return obj;
    },
    btniconcssobj: function () {
      return this.isCollapse ? 'el-icon-caret-bottom' : 'el-icon-caret-top';
    },
    strview: function () {
      return this.isCollapse ? '显示' : '隐藏';
    }
  },
  methods: {
    togglebar: function () {
      this.isCollapse = !this.isCollapse;
    }
  },
  template: '<el-container>\
          <el-header v-bind:style="topbarcssobj">\
          <slot name="tbar"></slot>\
          </el-header>\
          <el-main>\
          <div style="margin:3px;">\
            <div style="float:left;margin-right:10px;cursor:pointer;color: #d3dce6;display:none;" v-on:click="togglebar">\
              <i v-bind:class="btniconcssobj">{{strview}}查询条件</i>\
            </div>\
            <div>\
            <slot name="btn"></slot>\
            </div>\
          </div>\
          <div>\
            <slot name="work"></slot>\
          </div>\
          </el-main>\
         </el-container>'
});

调用:

<script src="~/Scripts/vue/workcontainer.js"></script>

 <work-container v-bind:height="80">
    <template v-slot:tbar>
      <spec-combo v-on:selectspec="setSpec"></spec-combo>
      <ban-input v-on:selectban="setBan"></ban-input>
      <grade-input v-on:selectban="setGrade"></grade-input>

    </template>
    <template v-slot:work>
      {{spec}}
      {{ban}}
      {{grade}}
    </template>
  </work-container>

以上这篇vue同个按钮控制展开和折叠同个事件操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • vue.js删除列表中的一行

    vue.js删除列表中的一行

    这篇文章给大家分享了vue.js删除列表中的一行的实例操作以及代码分享,有兴趣的朋友参考下。
    2018-06-06
  • Vue自定义指令的使用实例介绍

    Vue自定义指令的使用实例介绍

    作为使用Vue的开发者,我们对Vue指令一定不陌生,诸如v-model、v-on、等,同时Vue也为开发者提供了自定义指令的api,熟练的使用自定义指令可以极大的提高了我们编写代码的效率,让我们可以节省时间开心的摸鱼
    2023-04-04
  • vue3递归组件封装的全过程记录

    vue3递归组件封装的全过程记录

    组件是可以在自己的模板中调用自身的,不过他们只能通过name选项来做这件事,下面这篇文章主要给大家介绍了关于vue3递归组件封装的相关资料,需要的朋友可以参考下
    2021-09-09
  • Vue Element前端应用开发之根据ABP后端接口实现前端展示

    Vue Element前端应用开发之根据ABP后端接口实现前端展示

    本篇着重介绍基于ABP后端接口信息,实现对前端界面的开发工作。
    2021-05-05
  • Vue v2.4中新增的$attrs及$listeners属性使用教程

    Vue v2.4中新增的$attrs及$listeners属性使用教程

    这篇文章主要给大家介绍了关于Vue v2.4中新增的$attrs及$listeners属性的使用方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧。
    2018-01-01
  • vue-router 源码之实现一个简单的 vue-router

    vue-router 源码之实现一个简单的 vue-router

    这篇文章主要介绍了vue-router 源码之实现一个简单的 vue-router,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-07-07
  • 关于Vue-extend和VueComponent问题小结

    关于Vue-extend和VueComponent问题小结

    这篇文章主要介绍了Vue-extend和VueComponent问题,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-08-08
  • 关于Vue如何清除缓存的方法详解

    关于Vue如何清除缓存的方法详解

    缓存清除成为克服浏览器缓存中过时内容挑战的关键技术,术语“缓存清除”是指故意使静态资源失效或进行版本控制,迫使浏览器在发生更改时获取新资源,本文给大家介绍了Vue如何清除缓存,需要的朋友可以参考下
    2023-12-12
  • vue3+koa实现文件上传功能的全过程记录

    vue3+koa实现文件上传功能的全过程记录

    开发项目的时候,用到文件上传的功能很常见,包括单文件上传和多文件上传,下面这篇文章主要给大家介绍了关于vue3+koa实现文件上传功能的相关资料,需要的朋友可以参考下
    2023-01-01
  • vue3组件通信的方式总结及实例用法

    vue3组件通信的方式总结及实例用法

    在本篇文章里小编给大家整理的是一篇关于vue3组件通信的方式总结及实例用法,对此有兴趣的朋友们可以跟着学习下。
    2021-12-12

最新评论