Files
PetCommunity/miniprogram/custom-tab-bar/index.ts

36 lines
915 B
TypeScript

Component({
data: {
selected: 0,
unreadCount: 0,
tabs: [
{ pagePath: '/pages/feed/feed' },
{ pagePath: '/pages/nearby/nearby' },
{ pagePath: '/pages/friends/friends' },
{ pagePath: '/pages/profile/profile' },
],
},
methods: {
onTab(e: WechatMiniprogram.CustomEvent) {
// dataset 取出的是字符串,必须转数字,否则 WXML 中 selected === n 严格比较失败
const index = Number(e.currentTarget.dataset.index)
const path = e.currentTarget.dataset.path as string
if (index === this.data.selected) return
this.setData({ selected: index })
wx.switchTab({ url: path })
},
onPost() {
wx.navigateTo({ url: '/pages/post/post' })
},
setSelected(index: number) {
this.setData({ selected: index })
},
setUnread(count: number) {
this.setData({ unreadCount: count })
},
},
})