codecamp

Vant4 NavBar 导航栏

介绍

为页面提供导航功能,常用于页面顶部。

引入

通过以下方式来全局注册组件,更多注册方式请参考组件注册

import { createApp } from 'vue';
import { NavBar } from 'vant';

const app = createApp();
app.use(NavBar);

代码演示

基础用法

通过 ​title​ 属性设置导航栏标题。

<van-nav-bar title="标题" />

返回上级

在导航栏实现返回上级功能。

<van-nav-bar
  title="标题"
  left-text="返回"
  left-arrow
  @click-left="onClickLeft"
/>
export default {
  setup() {
    const onClickLeft = () => history.back();
    return {
      onClickLeft,
    };
  },
};

右侧按钮

在导航栏右侧添加可点击的按钮。

<van-nav-bar
  title="标题"
  left-text="返回"
  right-text="按钮"
  left-arrow
  @click-left="onClickLeft"
  @click-right="onClickRight"
/>
import { showToast } from 'vant';

export default {
  setup() {
    const onClickLeft = () => history.back();
    const onClickRight = () => showToast('按钮');
    return {
      onClickLeft,
      onClickRight,
    };
  },
};

使用插槽

可以通过插槽自定义导航栏两侧的内容。

<van-nav-bar title="标题" left-text="返回" left-arrow>
  <template #right>
    <van-icon name="search" size="18" />
  </template>
</van-nav-bar>

API

Props

参数 说明 类型 默认值
title 标题 string ''
left-text 左侧文案 string ''
right-text 右侧文案 string ''
left-arrow 是否显示左侧箭头 boolean false
border 是否显示下边框 boolean true
fixed 是否固定在顶部 boolean false
placeholder 固定在顶部时,是否在标签位置生成一个等高的占位元素 boolean false
z-index 导航栏 z-index number | string 1
safe-area-inset-top 是否开启顶部安全区适配 boolean false
clickable 是否开启两侧按钮的点击反馈 boolean true

Slots

名称 说明
title 自定义标题
left 自定义左侧区域内容
right 自定义右侧区域内容

Events

事件名 说明 回调参数
click-left 点击左侧按钮时触发 event: MouseEvent
click-right 点击右侧按钮时触发 event: MouseEvent

类型定义

组件导出以下类型定义:

import type { NavBarProps } from 'vant';

主题定制

样式变量

组件提供了下列 CSS 变量,可用于自定义样式,使用方法请参考 ConfigProvider 组件

名称 默认值 描述
--van-nav-bar-height 46px -
--van-nav-bar-background var(--van-background-2) -
--van-nav-bar-arrow-size 16px -
--van-nav-bar-icon-color var(--van-primary-color) -
--van-nav-bar-text-color var(--van-primary-color) -
--van-nav-bar-title-font-size var(--van-font-size-lg) -
--van-nav-bar-title-text-color var(--van-text-color) -
--van-nav-bar-z-index 1 -


Vant4 IndexBar 索引栏
Vant4 Pagination 分页
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }