NavBar 导航栏

导航栏组件,主要用于头部导航,组件名:uni-nav-bar,代码块: uNavBar。

使用方式:

script 中引用组件

  1. import uniNavBar from "@/components/uni-nav-bar/uni-nav-bar.vue"
  2. export default {
  3. components: {uniNavBar}
  4. }

template 中使用组件

  1. <uni-nav-bar left-icon="back" left-text="返回" right-text="菜单" title="导航栏组件"></uni-nav-bar>

NavBar 属性说明:

属性名类型默认值说明
titleString-标题文字
left-textString-右侧按钮文本
right-textString-右侧按钮文本
left-iconString-左侧按钮图标(图标类型参考 Icon 图标 type 属性)
right-iconString-右侧按钮图标(图标类型参考 Icon 图标 type 属性)
fixedBooleanfalse是否固定顶部
status-barBooleanfalse(fixed为true时,status-bar默认值为true)是否包含状态栏,
shadowBooleantrue导航栏下是否有阴影
colorString#000000图标和文字颜色
background-colorString#FFFFFF导航栏背景颜色
@click-leftEventHandle-左侧按钮点击时触发
@click-rightEventHandle-右侧按钮点击时触发

NavBar 插槽

开发者使用 NavBar 时,支持向 NavBar 里插入不同内容,以达到自定义的目的。

子元素 slot 的值说明
left向导航栏左侧插入
right向导航栏右侧插入
其他向导航栏中间插入
  1. <uni-nav-bar>
  2. <view>标题栏</view>
  3. <view slot="left">left</view>
  4. <view slot="right">right</view>
  5. </uni-nav-bar>

注意事项

  • 自定义导航栏遇到通顶到状态栏的情况,请设置status-bar="true"
  • 前端导航的下拉刷新,若想在导航栏下方使用,app下使用circle方式的下拉刷新,并设offset到导航栏下方(pages.json中的app-plus中配置)。hello uni-app中有示例。
  • 前端导航盖不住原生组件,如果页面有video、map、textarea(仅小程序)等原生组件,滚动时会覆盖住导航栏。
  • 前端组件在渲染速度上不如原生导航栏,原生导航可以在动画期间渲染,保证动画期间不白屏,但前端的导航栏在动画期间可能会整页白屏。所以在原生导航能解决问题的情况下,尽量使用原生导航