官方文档写的好简洁,但是官方demo里面很详细。
tab.png
<template>
<div>
<tab>
<tab-item selected @on-item-click="onItemClick">已发货</tab-item>
<tab-item @on-item-click="onItemClick">未发货</tab-item>
<tab-item @on-item-click="onItemClick">全部订单</tab-item>
</tab>
<br/>
<br/>
<tab>
<tab-item v-for="n in 8" :key="n" :selected="n===1">已发货{{ n }}</tab-item>
</tab>
<br/>
<br/>
<div>
<tab :line-width=2 active-color='#fc378c' v-model="index">
<tab-item class="vux-center" :selected="demo2 === item" v-for="(item, index) in list2" @click="demo2" :key="index">{{item}}</tab-item>
</tab>
<swiper v-model="index" height="100px" :show-dots="false">
<swiper-item v-for="(item, index) in list2" :key="index">
<div class="tab-swiper vux-center">{{item}} Container</div>
</swiper-item>
</swiper>
</div>
<br/>
<div class="box">
<x-button @click.native="index=0" :disabled="index === 0" type="primary">go to 0</x-button>
<x-button @click.native="index=1" :disabled="index === 1" type="primary">go to 1</x-button>
</div>
<br/>
<br/>
<tab :line-width="2">
<tab-item :selected="demo3 === item" v-for="(item, index) in list3" :class="{'vux-1px-r': index===0}" @click="demo3 = item" :key="index">{{item}}</tab-item>
</tab>
</div>
</template>
<script>
import { Tab, TabItem, Divider, XButton, Swiper, SwiperItem } from 'vux'
const list = () => ['精选', '美食', '电影', '酒店', '外卖']
export default {
components: {
Tab,
TabItem,
XButton,
Swiper,
SwiperItem
},
data () {
return {
index01: 0,
list2: list(),
demo2: '美食',
list3: ['收到的消息', '发出的消息'],
demo3: '收到的消息',
list4: ['正在放映', '即将上映'],
demo4: '即将上映',
demoDisabled: 'A',
index: 0,
getBarWidth: function (index) {
return (index + 1) * 22 + 'px'
}
}
},
methods: {
onItemClick (index) {
console.log('on item click:', index)
},
}
}
</script>
<style lang="less" scoped>
@import '~vux/src/styles/center.less';
.box {
padding: 15px;
}
.active-6-1 {
color: rgb(252, 55, 140) !important;
border-color: rgb(252, 55, 140) !important;
}
.active-6-2 {
color: #04be02 !important;
border-color: #04be02 !important;
}
.active-6-3 {
color: rgb(55, 174, 252) !important;
border-color: rgb(55, 174, 252) !important;
}
.tab-swiper {
background-color: #fff;
height: 100px;
}
</style>