uView Navbar 自定义导航栏

简介: uView Navbar 自定义导航栏

此组件一般用于在特殊情况下,需要自定义导航栏的时候用到,一般建议使用uni-app带的导航栏。

提示

右侧的演示中,导航栏上方有圆角,也有顶部的手机模型状态栏内容,以及返回图标和文字不对齐的情况。这是因为网页演示导致,实际中无此情况,请通过右上角的“演示”扫码查看实际效果。

#平台差异说明

App(vue) App(nvue) H5 小程序

#基本使用

默认情况下,该组件只有向左的箭头,点击可以返回上一页,如果您想将自定义导航栏用在tabbar(不存在要返回的逻辑)页面, 这样会隐藏左边的返回图标区域。

  • 如果想在返回箭头的右边自定义类似"返回"字样,可以将left-text设置为"返回"
  • 通过title参数传入需要显示的标题,通过title-width(rpx)设置标题区域的宽度,文字超出会通过省略号隐藏
  • 通过fixed配置是否将导航栏固定在顶部

说明

  • 在小程序中,导航栏会自动适配导航栏右侧的胶囊位置,避开该区域
  • 组件底部默认有一条下边框,如您不需要,可以设置borderfalse即可
<template>
  <view>
    <!-- 2.0.19支持autoBack,默认为false -->
        <u-navbar
            title="个人中心"
            @rightClick="rightClick"
            :autoBack="true"
        >
        </u-navbar>
  </view>
</template>
<script>
    methods:{
        rightClick() {
            console.log('rightClick');
        },
        leftClick() {
            console.log('leftClick');
        }
    }
</script>

copy

#注意事项

既然是要自定义导航栏,那么首先就要取消系统自带的导航栏,需要在uni-app目的根目录的"pages.json"中设置,同时在此设置状态栏字体的颜色(H5无效), 自定义导航栏后,如果想通过"uni.setNavigationBarColor"动态设置导航栏颜色相关参数,是可能会出问题的,请勿使用此方式。

// pages.json
"pages": [
  // navbar-自定义导航栏
  {
    "path": "/pages/navbar/index",
    "style": {
      "navigationStyle": "custom" ,// 隐藏系统导航栏
      "navigationBarTextStyle": "white" // 状态栏字体为白色,只能为 white-白色,black-黑色 二选一
    }
  }
]

copy

#导航栏高度

可以通过height(单位px,默认44,和uni-app统导航栏高度一致)配置导航栏的高度,此高度为导航栏内容的高度,不含状态栏的高度,组件内部会自动 加上状态栏的高度,并填充状态栏的占位区域。

#自定义导航栏内容

通过自定义slot传入的内容

<template>
  <view>
        <u-navbar
            leftText="返回"
            title="个人中心"
            :safeAreaInsetTop="false"
        >
            <view
                class="u-nav-slot"
                slot="left"
            >
                <u-icon
                    name="arrow-left"
                    size="19"
                ></u-icon>
                <u-line
                    direction="column"
                    :hairline="false"
                    length="16"
                    margin="0 8px"
                ></u-line>
                <u-icon
                    name="home"
                    size="20"
                ></u-icon>
            </view>
        </u-navbar>
  </view>
</template>

copy

#自定义导航栏背景颜色

uView提供了一个bgColor参数,可以自定义导航栏的背景颜色:

<template>
  <view>
    <u-navbar title="" :bgColor="bgColor">
      
    </u-navbar>
    <view class="content">
      <!-- 正文内容 -->
    </view>
  </view>
</template>
<script>
  export default {
    data() {
      return {
        bgColor: '#001f3f',
      }
    }
  }
</script>
相关文章
|
JavaScript API 开发者
使用 u-navbar 组件实现页面导航和布局的完全指南
使用 u-navbar 组件实现页面导航和布局的完全指南
2532 0
|
存储 JavaScript
uniapp (vue3)生成二维码
uniapp (vue3)生成二维码
1694 0
|
移动开发 小程序 前端开发
uniapp开发小程序H5页面顶部导航栏navigationBar如何隐藏?三种解决办法
uniapp开发小程序H5页面顶部导航栏navigationBar如何隐藏?三种解决办法
|
存储 移动开发 JavaScript
uni-app页面数据传参方式
uni-app页面数据传参方式
1556 4
|
7月前
|
JavaScript 小程序 Android开发
UniApp移动端开发 vs 原生开发:全面对比分析
本文全面对比UniApp与原生开发在语言、性能、成本、生态等方面的差异,深入解析两者技术原理与优化策略,结合启动速度、渲染性能、包大小等数据,提供适用场景推荐与混合开发方案,助力团队根据项目需求做出科学选型。
1010 0
|
移动开发 小程序 测试技术
自定义多级联动选择器指南(uni-app)
在本文中,探讨了如何在uni-app中创建自定义多级联动选择器组件。这个组件具有强大的多端支持,可适用于H5、APP、微信小程序、支付宝小程序等多种平台。
1736 1
自定义多级联动选择器指南(uni-app)
|
JavaScript
vue3 vite配置@根路径---解决:找不到模块“./xx/xxx.vue”或其相应的类型声明
vue3 vite配置@根路径---解决:找不到模块“./xx/xxx.vue”或其相应的类型声明
4853 0
|
JavaScript
如何对ElementUI、ElementPlus中的Tree树组件进行美化,如增加辅助线、替换展开收起图标、点击节点后文字高亮等效果?本文给你答案!
本文介绍了如何对ElementUI和ElementPlus的Tree树组件进行美化,包括增加辅助线、替换展开收起图标、点击节点后文字高亮等效果,并提供了详细的代码示例和实现效果。
4773 0
如何对ElementUI、ElementPlus中的Tree树组件进行美化,如增加辅助线、替换展开收起图标、点击节点后文字高亮等效果?本文给你答案!
|
移动开发 前端开发 安全
uni-app跨域调试你学会了没
uni-app跨域调试你学会了没
1064 0

热门文章

最新文章