更新记录
1.0.0(2026-11-12) 下载此版本
新增
- 从 e-sport 项目移植
y-nav-bar组件到uni_modules。 - 支持居中标题、左侧头像两种布局。
- 自动适配微信小程序胶囊按钮位置,支持状态栏占位。
- 支持页面滚动时的背景渐变与模糊效果。
- 返回逻辑兼容页面栈为空,自动回到首页。
- 声明
y-scss、y-icon依赖。
平台兼容性
uni-app(5.0)
| Vue2 | Vue3 | Chrome | Safari | app-vue | app-nvue | Android | iOS | 鸿蒙 |
|---|---|---|---|---|---|---|---|---|
| × | √ | - | - | √ | - | - | - | - |
| 微信小程序 | 支付宝小程序 | 抖音小程序 | 百度小程序 | 快手小程序 | 京东小程序 | 鸿蒙元服务 | QQ小程序 | 飞书小程序 | 小红书小程序 | 快应用-华为 | 快应用-联盟 |
|---|---|---|---|---|---|---|---|---|---|---|---|
| √ | - | - | - | - | - | - | - | - | - | - | - |
y-nav-bar
y-nav-bar 是面向 uni-app(Vue 3) 的自定义导航栏组件,适配微信小程序胶囊按钮,支持标题、返回、左侧头像和滚动渐变。
- 当前版本:
1.0.0 - 依赖:
y-scss(主题变量与工具类)、y-icon(返回箭头)
特性
- 自动读取胶囊按钮位置,适配不同机型状态栏高度。
- 支持居中标题、左侧头像两种布局。
- 页面滚动时背景渐变 + 模糊。
- 返回逻辑兼容页面栈为空的情况,自动回到首页。
属性
| 属性 | 类型 | 默认值 | 说明 |
|---|---|---|---|
title |
String |
'' |
导航栏标题 |
type |
String |
'default' |
default 居中标题;left 左侧头像 |
img |
String |
null |
type="left" 时显示的头像/图标地址 |
bgColor |
String |
'' |
导航栏背景色 |
color |
String |
'' |
标题和返回图标颜色,默认 rgb(var(--y-title)) |
showBack |
Boolean |
true |
是否显示返回按钮(type="default" 时生效) |
事件
| 事件 | 参数 | 说明 |
|---|---|---|
nav-info |
胶囊按钮信息 | 组件挂载后触发,可用于计算页面内容顶部占位 |
backed |
- | 返回成功后触发 |
用法
<template>
<view>
<y-nav-bar title="页面标题" @nav-info="onNavInfo" />
<!-- 左侧头像模式 -->
<y-nav-bar type="left" :img="avatar" title="棋手详情" :show-back="false" />
</view>
</template>
使用自定义导航栏的页面,需要在 pages.json 中关闭原生导航栏:
{
"path": "pages/index/index",
"style": {
"navigationStyle": "custom"
}
}
滚动渐变
组件监听全局 pageScroll 事件。页面需要在 onPageScroll 中派发滚动位置:
<script setup>
import { onPageScroll } from '@dcloudio/uni-app'
onPageScroll((e) => {
uni.$emit('pageScroll', { scrollTop: e.scrollTop })
})
</script>
pageScroll是全局事件,多个页面同时挂载导航栏时会互相影响,建议同一时间只在一个页面使用。
说明
- 返回时如果页面栈没有上一页,会
reLaunch到/pages/index/index,如项目首页路径不同请调整。 - 组件依赖
y-scss的--y-container、--y-title变量,以及d-flex、ai-center、fs-30、toel等工具类。 - 返回箭头使用
y-icon的left图标。
更新日志
见 changelog.md。

收藏人数:
下载插件并导入HBuilderX
赞赏(0)
下载 9
赞赏 0
下载 12761349
赞赏 1959
赞赏
京公网安备:11010802035340号