微信小程序tab切换(vue2)写法:
父组件:请求数据
<!-- tobar -->
<view>
<my-tabs :tabs="tabs" :defaultIndex="defaultIndex" @tabClick="tabClick"/>
</view>
父组件方法:
export default {
data() {
return {
tabs:[],
defaultIndex:0,
};
},
methods:{
//监听到的子组件的点击tab事件
tabClick(index){
this.defaultIndex=index
}
}
}
子组件:
<view class="tab-item" :class="index===defaultIndex ? 'active' : ''" @click="tabClick(index)">
{{item.label}} //请求数据的item
</view>
子组件方法:
export default {
props:{ //接受父组件的数据
tabs:{
type:Array,
default:()=>{
return []
}
},
//父组件传过来的 单项数据流
defaultIndex:{
type:Number,
default:0
}
},
data() {
return {
};
},
methods:{
tabClick(index){
this.$emit('tabClick',index)
}
}
}
希望可以帮到你们…要灵活运用Ctrl+c/Ctrl+v