赞
踩
此组件提供了自定义tabbar的能力,具有如下特点:
App(vue) | App(nvue) | H5 | 小程序 |
---|---|---|---|
√ | √ | √ | √ |
推荐您使用list数组遍历循环,案例使用基础方式构建,请根据click
事件回调进行后续逻辑操作。
- <u-tabbar
- :value="value1"
- @change="change1"
- :fixed="false"
- :placeholder="false"
- :safeAreaInsetBottom="false"
- >
- <u-tabbar-item text="首页" icon="home" @click="click1" ></u-tabbar-item>
- <u-tabbar-item text="放映厅" icon="photo" @click="click1" ></u-tabbar-item>
- <u-tabbar-item text="直播" icon="play-right" @click="click1" ></u-tabbar-item>
- <u-tabbar-item text="我的" icon="account" @click="click1" ></u-tabbar-item>
- </u-tabbar>
- <!-- js -->
- value1: 0,
- click1(e) {
- console.log('click1', e);
- }

copy
使用dot
属性添加--小点--类型徽标,使用badge
属性添加--数字--类型徽标。您也可以使用:badge='badge'
动态设置徽标数量, 这在消息盒子的展示中是比较好用的功能,
- <u-tabbar
- :value="value2"
- :placeholder="false"
- @change="name => value2 = name"
- :fixed="false"
- :safeAreaInsetBottom="false"
- >
- <u-tabbar-item text="首页" icon="home" dot ></u-tabbar-item>
- <u-tabbar-item text="放映厅" icon="photo" badge="3"></u-tabbar-item>
- <u-tabbar-item text="直播" icon="play-right" ></u-tabbar-item>
- <u-tabbar-item text="我的" icon="account" ></u-tabbar-item>
- </u-tabbar>
- <!-- data -->
- value2: 1,
copy
- <u-tabbar
- :placeholder="false"
- :value="value3"
- @change="name => value3 = name"
- :fixed="false"
- :safeAreaInsetBottom="false"
- >
- <u-tabbar-item text="首页" icon="home" name="home"></u-tabbar-item>
- <u-tabbar-item text="放映厅" icon="photo" name="photo" ></u-tabbar-item>
- <u-tabbar-item text="直播" icon="play-right" name="play-right"></u-tabbar-item>
- <u-tabbar-item text="我的" name="account" icon="account" ></u-tabbar-item>
- </u-tabbar>
- <!-- data -->
- value3: 'play-right',
copy
如您需要自定义图标/颜色,在u-tabbar-item
标签中使用插槽active-icon
和inactive-icon
来定义图标和颜色
- <u-tabbar
- :value="value4"
- @change="name => value4 = name"
- :fixed="false"
- :placeholder="false"
- activeColor="#d81e06"
- :safeAreaInsetBottom="false"
- >
- <u-tabbar-item text="首页">
- <image
- class="u-page__item__slot-icon"
- slot="active-icon"
- src="https://cdn.uviewui.com/uview/common/bell-selected.png"
- ></image>
- <image
- class="u-page__item__slot-icon"
- slot="inactive-icon"
- src="https://cdn.uviewui.com/uview/common/bell.png"
- ></image>
- </u-tabbar-item>
- <u-tabbar-item text="放映厅" icon="photo" ></u-tabbar-item>
- <u-tabbar-item text="直播" icon="play-right" ></u-tabbar-item>
- <u-tabbar-item text="我的" icon="account" ></u-tabbar-item>
- </u-tabbar>
- <!-- data -->
- value4: 0,

copy
在切换事件中,处理拦截事件或者您其他js操作逻辑。
- <u-tabbar
- :value="value5"
- :fixed="false"
- @change="change5"
- :safeAreaInsetBottom="false"
- :placeholder="false"
- >
- <u-tabbar-item text="首页" icon="home" ></u-tabbar-item>
- <u-tabbar-item text="放映厅" icon="photo" ></u-tabbar-item>
- <u-tabbar-item text="直播" icon="play-right" ></u-tabbar-item>
- <u-tabbar-item text="我的" icon="account" ></u-tabbar-item>
- </u-tabbar>
- <!-- data -->
- value5: 0,
- <!-- js -->
- change5(name) {
- if (name === 1) return uni.$u.toast('请您先登录')
- else this.value5 = name
- },

copy
组件默认带了顶部边框,如果不需要,配置border
为false
即可。
- <u-tabbar
- :value="value7"
- :placeholder="false"
- :border="false"
- @change="name => value7 = name"
- :fixed="false"
- :safeAreaInsetBottom="false"
- >
- <u-tabbar-item text="首页" icon="home" ></u-tabbar-item>
- <u-tabbar-item text="放映厅" icon="photo" ></u-tabbar-item>
- <u-tabbar-item text="直播" icon="play-right" ></u-tabbar-item>
- <u-tabbar-item text="我的" icon="account" ></u-tabbar-item>
- </u-tabbar>
- <!-- data -->
- value7: 3
copy
与原生效果无异,但您可以按照api配置您需要的其他配置,如徽标,边框等
- <u-tabbar
- :value="value6"
- @change="name => value6 = name"
- :fixed="true"
- :placeholder="true"
- :safeAreaInsetBottom="true"
- >
- <u-tabbar-item text="首页" icon="home" ></u-tabbar-item>
- <u-tabbar-item text="放映厅" icon="photo" ></u-tabbar-item>
- <u-tabbar-item text="直播" icon="play-right" ></u-tabbar-item>
- <u-tabbar-item text="我的" icon="account" ></u-tabbar-item>
- </u-tabbar>
- <!-- data -->
- value6: 0,
赞
踩
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。