啥都不说了直接亮代码
在wxml页面的代码是这样的
上面的tab选项
<view class='backbone-tab'>
<text class='{{tabArr.currentId==1?"active":""}}' id='1' data-id='1' bindtap='tab'>笔记</text>
<text class='{{tabArr.currentId==2?"active":""}}' id='2' data-id='2' bindtap='tab'>关于我</text>
<text class='{{tabArr.currentId==3?"active":""}}' id='3' data-id='3' bindtap='tab'>收藏</text>
<text class='{{tabArr.currentId==4?"active":""}}' id='4' data-id='4' bindtap='tab'>活动</text>
</view>
选项对应的内容 只是举例
<view class='item {{tabArr.currentBdid==1?"active":""}}'>
<view class='notes-header'>
<view>
<image src='../../image/separate.png'></image>
<text>所有笔记</text>
</view>
<text bindtap='noteslist'>更多</text>
</view>
</view>
在js页面的代码
data:{
tabArr: {
currentId: 1,
currentBdid: 1
},
}
tab: function (e) {
var dataid = e.currentTarget.id
var obj = {}
obj.currentId = dataid
obj.currentBdid = dataid
this.setData({
tabArr: obj
})
},
首先 给wxml页面的tab选项都定义一个自定义的id data-id=“自定义id” 然后点击获得自定义的id给obj.currentid 和 obj.currentBdid 为什么一样的id要给两个对象中的不同的键呢 因为给currentid是为了让点笔记的时候给笔记一个下边框 给 currentBdid是为了点击笔记的时候 显示下面的页面 实际用一个也可以 但是我习惯用两个 下面的内容都设置为none但是初始的时候得让第一个显示 可以在data中直接设置都是1 就可以了 其他的功能如每个选项卡的内容点击跳转了 下拉刷新在这里都不做赘述了