uniapp:自定义底部导航栏 |
您所在的位置:网站首页 › 底部图片 › uniapp:自定义底部导航栏 |
uview>tabbar组件 1、在pages.json中正常定义tabbar逻辑和字段,只需配置tabBar字段list中的pagePath(需以"/"开头)属性即可 "tabBar": { // 设置底部 tab 的表现 "color": "#333333", "selectedColor": "#fa2c19", "borderStyle": "black", "backgroundColor": "#fff", "list": [{ "pagePath": "pages/index/index" }, { "pagePath": "pages/category/category" }, { "pagePath": "pages/found/found" }, { "pagePath": "pages/cart/cart" }, { "pagePath": "pages/mine/mine" } ] }2、在各个tabbar页面引入u-tabbar组件,组件会默认自动通过uni.hideTabBar()隐藏系统tabbar 在每个tabbar页面都引入u-tabbar组件,示例:index.vue页面--> export default { data() { return { footerTabbar: this.$store.state.footerTabbar,//这样可以做到修改某一个页面的u-tabbar数据,其他页面的u-tabbar也能同步更新 } } }3、vuex:通过vuex引用同一份tabbar组件的list参数,这样可以做到修改某一个页面的u-tabbar数据,其他页面的u-tabbar也能同步更新 组件内部会自动处理各种跳转的逻辑,同时需要注意以下两点: 要在list参数中配置pagePath路径,此路径为pages.json中定义的tabbar字段的路径 此种方式,无需通过v-model绑定活动项,内部会自动进行判断和跳转 import Vue from 'vue' import Vuex from 'vuex' Vue.use(Vuex) const store = new Vuex.Store({ state: { footerTabbar: [{ iconPath: require('@/static/tabBar/tab_01.png'), selectedIconPath: require('@/static/tabBar/tab_02.png'), text: '首页', customIcon: false, pagePath: '/pages/index/index' }, { iconPath: require('@/static/tabBar/tab_03.png'), selectedIconPath: require('@/static/tabBar/tab_04.png'), text: '分类', customIcon: false, pagePath: '/pages/category/category' }, { iconPath: require('@/static/tabBar/tab_05.png'), selectedIconPath: require('@/static/tabBar/tab_06.png'), text: '发现', midButton: true, customIcon: false, pagePath: '/pages/found/found', }, { iconPath: require('@/static/tabBar/tab_07.png'), selectedIconPath: require('@/static/tabBar/tab_08.png'), text: '购物车', customIcon: false, pagePath: '/pages/cart/cart', }, { iconPath: require('@/static/tabBar/tab_09.png'), selectedIconPath: require('@/static/tabBar/tab_10.png'), text: '我的', customIcon: false, pagePath: '/pages/mine/mine', }, ], }, mutations: {}, actions: {} }) export default store4、main.js中引入store import store from '@/utils/store.js' const app = new Vue({ ...App, store }) app.$mount()效果图如下: |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |