微信小程序自定义Tabbar,附详细源码
1,前言
分享一个完整的微信小程序自定义Tabbar
,tabbar按钮可以设置为跳转页面,也可以设置为功能按钮。懒得看文字的可以直接去底部,博主分享了GitHub地址。
2,说明
由于微信小程序自带的Tabbar
功能比较单一,比如要做到中间是一个突出的圆形扫一扫按钮,就需要自定义Tabbar
了。
博主创建了一个Tabbar
组件,自己写的样式,在需要用到的页面引入组件。
组件使用了position: fixed
定位到底部,所以在用到组件的页面,需要给page
加上margin-bottom
样式。
交互是通过在组件上定义的bindtap
事件,来进行跳转页面或者触发功能模块,其中路由跳转是用的wx.switchTab
。事件以及传参可以通过triggerEvent
;
3,核心代码
文件目录
引用组件
//在页面json中
{
"usingComponents": {
"Tabbar":"../../components/tabbar/tabbar"
}
}
//在wxml中
<Tabbar nowIndex="0" bind:switchDialog="switchDialog"/>
组件的data
data: {
tabbarList:[
{
index:0,
pagePath:'../index/index',
title:"首页",
icon: "../../images/home.png",
onIcon: "../../images/home1.png",
color: "#9B9B9B",
onColor: "#19C29C",
},
{
index:1,
pagePath:'',
icon: "../../images/look.png",
onIcon: "../../images/look.png",
},
{
index:2,
pagePath:'../userCenter/userCenter',
title:"个人中心",
icon: "../../images/my.png",
onIcon: "../../images/my1.png",
color: "#9B9B9B",
onColor: "#19C29C",
}
],
}
组件的路由跳转
// 切换
changePage(e){
let { path,index } = e.currentTarget.dataset;
if(index === 1){
this.chickLook();
return false;
};
wx.switchTab({
url: path
});
}
源码GitHub地址:https://github.com/pdd11997110103/ComponentWarehouse
如果看了觉得有帮助的,我是@上进的鹏多多,欢迎 点赞 关注 评论;
END
往期文章
个人主页
接受失败,但不选择放弃!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~