您好,登錄后才能下訂單哦!
小編這次要給大家分享的是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 可折疊面板的工作區(qū)組件
這個組件中使用了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:>\ <slot name="tbar"></slot>\ </el-header>\ <el-main>\ <div >\ <div 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如何實現同個按鈕控制展開和折疊同個事件的文章,如果覺得文章內容寫得不錯的話,可以把它分享出去給更多人看到。
免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。