微信小程序默认的导航比较单一,不利于维护,我们可以自定义导航,通过组件的形式1、;在根目录创建components文件夹,用于放置我们的导航的组件2、;创建tabBar组件,右击组件文件夹新建Component3、;编写组件代码tab
微信小程序默认的导航比较单一,不利于维护,我们可以自定义导航,通过组件的形式
1、 在根目录创建components文件夹,用于放置我们的导航的组件
2、 创建tabBar组件,右击组件文件夹新建Component
3、 编写组件代码
tabBar.wxml
<view class="todbar {{isFullSucreen?'fix-Full-button':''}}">
<view class="todbarItem" bindtap="tabClick" data-path='{{item.pagePath}}' wx:for="{{tabbarList}}" wx:key="{{item}}" style="width: {{750 / tabbarList.length}}rpx;">
<view class="todbarItemImage">
<image src="{{item.pagePath==thisUrl ? item.selectedIconPath : item.iconPath}}"></image>
</view>
<view class="todbarItemWord {{item.pagePath==thisUrl ? 'on' : ''}}">{{item.text}}</view>
</view>
</view>
tabBar.js
// components/tabBar/tabBar.js
// 获取应用实例
const app = getApp()
// 引入发送请求方法
import { request } from "../../request/index.js"
Component({
/**
* 组件的属性列表
*/
properties: {
},
/**
* 组件的初始数据
*/
data: {
tabbarList:[],
isFullSucreen: app.globalData.isFullSucreen ? true : false, //判断机型
thisUrl:null,
},
/**
* 组件的方法列表
*/
methods: {
tabClick(e){
// console.log(e.currentTarget.dataset.path)
wx.reLaunch({
url:e.currentTarget.dataset.path,
});
},
},
attached(){
// 显示加载图标
wx.showLoading({
title: '加载中',
})
request({
url: '/Draw/getTabbar',
}).then(result=>{
console.log(result)
if(result.data.code==200){
wx.hideLoading()
// 数据请求成功后,关闭刷新
wx.stopPullDownRefresh({
success (res) {
console.log('刷新成功');
}
});
this.setData({
tabbarList:result.data.data
})
console.log(this.data.tabbarList)
}else{
wx.showLoading({
title: '加载中'
});
}
})
var pages = getCurrentPages(); //获取加载的页面
var currentPage = pages[pages.length - 1]; //获取当前页面的对象
var url = currentPage.route; //当前页面url
this.setData({
thisUrl:'/'+url
})
console.log(this.data.thisUrl)
}
})
4、效果展示:
沃梦达教程
本文标题为:微信小程序如何自定义底部导航,自定义导航案例


猜你喜欢
- Flutter实现底部和顶部导航栏 2022-08-31
- Android实现监听音量的变化 2023-03-30
- Android实现轮询的三种方式 2023-02-17
- Android MaterialButton使用实例详解(告别shape、selector) 2023-06-16
- 详解flutter engine 那些没被释放的东西 2022-12-04
- 最好用的ios数据恢复软件:PhoneRescue for Mac 2023-09-14
- 作为iOS开发,这道面试题你能答出来,说明你基础很OK! 2023-09-14
- SurfaceView播放视频发送弹幕并实现滚动歌词 2023-01-02
- Android studio实现动态背景页面 2023-05-23
- iOS 对当前webView进行截屏的方法 2023-03-01