uniapp tabbar底部菜单 vue底部菜单的使用方法
tabbar底部菜单实现这一功能需求有很多种方法,可以借助uniapp官方文档或者自己独立封装的第三方UI组件来进行展示,今天重点介绍图鸟组件效果炫酷,功能齐全
tabbar实现
- 在uniapp创建时候需要引用 图鸟UI
需要再uniapp中的插件市场 进行在线搜索下载引用
在线引用
在配置之前,请确保您已经根据安装步骤中的步骤对TuniaoUI进行下载安装
2.引入TuniaoUI主JS库
在项目根目录中的main.js中,引入并使用TuniaoUI的JS库,注意这两行配置代码要放在import Vue之后。
// 引入全局TuniaoUI
import TuniaoUI from 'tuniao-ui'
Vue.use(TuniaoUI)
3.引入TuniaoUI提供的vuex
在项目根目录的main.js中引入store
// 引入store
import store from './store'
...
const app = new Vue({
store,
...App
})
在项目根目录中的main.js中,引入并使用TuniaoUI的vuex,注意这两行配置代码要放在import Vue之后。
// 引入TuniaoUI提供的vuex简写方法
let vuexStore = require('@/store/$tn.mixin.js')
Vue.mixin(vuexStore)
4.引入TuniaoUI的全局SCSS主题文件
在项目根目录的uni.scss中引入此文件。
@import 'tuniao-ui/theme.scss';
5.引入TuniaoUI基础样式和图标文件
注意
在App.vue中style标签首行的位置引入,注意给style标签加入lang="scss"属性
<style lang="scss">
/* 注意要写在第一行,同时给style标签加入lang="scss"属性 */
@import './tuniao-ui/index.scss';
@import './tuniao-ui/iconfont.css';
</style>
6.配置easycom组件模式
此配置需要在根目录的pages.json中进行。
温馨提示
uni-app为了调试性能的原因,修改easycom规则不会实时生效,配置完后,您需要重启HBuilderX或者重新编译项目才能正常使用TuniaoUI的功能。
请确保您的pages.json中只有一个easycom字段,否则请自行合并多个引入规则。
// pages.json
{
"easycom": {
"^tn-(.*)": "@/tuniao-ui/components/tn-$1/tn-$1.vue"
},
"pages": [ //pages数组中第一项表示应用启动页,参考:https://uniapp.dcloud.io/collocation/pages
{
// ......
}
]
// ......
}
引用代码示例
<template>
<tn-tabbar v-model="currentIndexF" :list="tabbarList" activeColor="tn-color-orange" inactiveColor="#AAAAAA"
activeIconColor="tn-main-gradient-orange" @change="switchTabbar" :animation="true"></tn-tabbar>
</template>
<script>
export default {
name: "tabbar",
props: {
currentIndex: {
type:Number,
default () {
return 2;
}
}
},
data() {
return {
currentIndexF:this.currentIndex,
tabbarList: [
{
title: '逛一逛',
activeIcon: 'shopbag-fill',
inactiveIcon: 'shopbag'
},{
title: '购物车',
activeIcon: 'cart-fill',
inactiveIcon: 'cart'
},
{
title: '广场',
activeIcon: 'discover-planet',
inactiveIcon: 'group-circle',
activeIconColor: '#FFFFFF',
inactiveIconColor: '#FFFFFF',
iconSize: 50,
out: true
},{
title: '成就',
activeIcon: 'trophy-fill',
inactiveIcon: 'trophy'
},
{
title: '我的',
activeIcon: 'vip-fill',
inactiveIcon: 'vip'
}
],
};
},
onLoad() {
},
onShow() {
},
methods: {
switchTabbar(index) {
// 根据自己的项目,展示的路由菜单名称等
}
}
}
</script>
效果展示 中间凸起的菜单
uniapp vue 获取定位 当前位置信息 用户的授权 uni.getLocation使用方法