diff options
| author | Maxim Filippov <colixer@gmail.com> | 2018-12-17 02:39:37 +0300 |
|---|---|---|
| committer | Maxim Filippov <colixer@gmail.com> | 2018-12-17 02:39:37 +0300 |
| commit | 2211c533ddf7a05723afb2e2a8664b9b49c9648d (patch) | |
| tree | d5bcfbdb55536db01bc0bfda38991db8f159a3e9 /src/components/tab_switcher/tab_switcher.jsx | |
| parent | 5fc0fe28e45882da0fab635e839a2977104d2f46 (diff) | |
| parent | ada4bd0d9874d98213cf79ccd9f7cddda36d1b6c (diff) | |
Merge branch 'develop' into feature/new-user-routes
Diffstat (limited to 'src/components/tab_switcher/tab_switcher.jsx')
| -rw-r--r-- | src/components/tab_switcher/tab_switcher.jsx | 25 |
1 files changed, 17 insertions, 8 deletions
diff --git a/src/components/tab_switcher/tab_switcher.jsx b/src/components/tab_switcher/tab_switcher.jsx index 3fff38f6..2f362c4d 100644 --- a/src/components/tab_switcher/tab_switcher.jsx +++ b/src/components/tab_switcher/tab_switcher.jsx @@ -18,18 +18,27 @@ export default Vue.component('tab-switcher', { const tabs = this.$slots.default .filter(slot => slot.data) .map((slot, index) => { - const classes = ['tab'] + const classesTab = ['tab'] + const classesWrapper = ['tab-wrapper'] if (index === this.active) { - classes.push('active') + classesTab.push('active') + classesWrapper.push('active') } - return (<button onClick={this.activateTab(index)} class={ classes.join(' ') }>{slot.data.attrs.label}</button>) + return ( + <div class={ classesWrapper.join(' ')}> + <button onClick={this.activateTab(index)} class={ classesTab.join(' ') }>{slot.data.attrs.label}</button> + </div> + ) }); - const contents = ( - <div> - {this.$slots.default.filter(slot => slot.data)[this.active]} - </div> - ); + const contents = this.$slots.default.filter(_=>_.data).map(( slot, index ) => { + const active = index === this.active + return ( + <div class={active ? 'active' : 'hidden'}> + {slot} + </div> + ) + }); return ( <div class="tab-switcher"> <div class="tabs"> |
