Skip to content

Commit 95d97db

Browse files
authored
Merge pull request bootstrap-vue#124 from salestreamsoft/master
[Tabs component] updates
2 parents fb2b44d + bbf1906 commit 95d97db

File tree

2 files changed

+25
-4
lines changed

2 files changed

+25
-4
lines changed

components/tab.vue

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<template>
2-
<div role="tabpanel" class="tab-pane" :class="{active: active, disabled: disabled, fade: fade, in: animate}">
2+
<div role="tabpanel" class="tab-pane" :class="{active: active, disabled: disabled, fade: fade, in: animate, show: active}">
33
<slot></slot>
44
</div>
55
</template>

components/tabs.vue

Lines changed: 24 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<template>
2-
<div class="tabs">
3-
<ul class="nav nav-tabs">
2+
<div class="tabs" >
3+
<ul :class="['nav','nav-' + navStyle]">
44
<li class="nav-item" v-for="(item,index) in items" @click="setActive(index)">
55
<span :class="['nav-link','btn',btnSize,item.active ? 'active' : '',item.disabled ? 'disabled' : '']">
66
{{item.title}}
@@ -24,7 +24,9 @@
2424
export default {
2525
replace: true,
2626
data() {
27+
let currentTab = this.value || 0
2728
return {
29+
currentTab,
2830
items: []
2931
};
3032
},
@@ -41,6 +43,22 @@
4143
size: {
4244
type: String,
4345
default: 'md'
46+
},
47+
value: {
48+
type: Number,
49+
default: 0
50+
},
51+
navStyle: {
52+
type: String,
53+
default: 'tabs'
54+
}
55+
},
56+
watch: {
57+
currentTab (val) {
58+
this.$emit('input', val)
59+
},
60+
value (val) {
61+
this.setActive(val);
4462
}
4563
},
4664
methods: {
@@ -85,12 +103,15 @@
85103
this.$set(this.$children[index], 'animate', true);
86104
this.$root.$emit('changed::tab', this.items[index].id);
87105
}, this.fade ? TRANSITION_DURATION : 0);
106+
107+
// store currentActive
108+
this.currentTab = index
88109
}
89110
},
90111
mounted() {
91112
// if no active tab, set the first one by default
92113
if (this.getActive() === -1) {
93-
this.setActive(0);
114+
this.setActive(this.currentTab);
94115
}
95116
},
96117
destroyed() {

0 commit comments

Comments
 (0)