<view> <SearchInput></SearchInput> <Tabs tabs="{{tabs}}" bindstabsItemChange="handletabsItemChange"> <block wx:if="{{tabs[0].isActive}}">0</block> <block wx:elif="{{tabs[1].isActive}}">1</block> <block wx:elif="{{tabs[2].isActive}}">2</block> </Tabs> </view>
这里bindstabsItemChange="handletabsItemChange",他绑定的事件是如下代码函数
methods: {
handleItemTap(e){
const {index}=e.currentTarget.dataset;
this.triggerEvent("tabsItemChange",{index})
}
}
})
tabsItemChange的绑定事件就是在tabsItemChange前面加上bind,等于bindtabsItemChange,咱们将
handletabsItemChange事件定义传给绑定函数
handletabsItemChange定义以下:
handletabsItemChange(e){
const {index}=e.detail;
let {tabs}=this.data;
tabs.forEach((v,i)=>i===index?v.isActive=true:v.isActive=false);
this.setData({
tabs
})
},
此是父组件给子组件传递参数的过程this