2.7 KiB
2.7 KiB
Custom Nav Bar 通用导航栏组件
这是一个融合了多个导航栏版本的通用组件,支持多种配置选项。
功能特性
- ✅ 可配置背景颜色
- ✅ 可配置标题颜色
- ✅ 可选的返回按钮
- ✅ 可选的搜索按钮
- ✅ 可配置标题对齐方式
- ✅ 支持自定义事件处理
- ✅ 响应式设计,适配不同设备
使用方法
基础用法
<template>
<!-- 基础导航栏 -->
<custom-nav-bar title="首页" />
</template>
带返回按钮的导航栏
<template>
<!-- 带返回按钮的导航栏 -->
<custom-nav-bar
title="详情页"
:show-back="true"
background-color="#ff803a"
title-color="#ffffff"
/>
</template>
带搜索按钮的导航栏
<template>
<!-- 带搜索按钮的导航栏 -->
<custom-nav-bar
title="搜索"
:show-search="true"
@search="handleSearch"
/>
</template>
完整配置示例
<template>
<custom-nav-bar
title="我的页面"
:show-back="true"
:show-search="true"
background-color="#ff803a"
title-color="#ffffff"
icon-color="#ffffff"
title-align="center"
@back="handleBack"
@search="handleSearch"
/>
</template>
<script setup>
const handleBack = () => {
console.log('返回按钮被点击')
}
const handleSearch = () => {
console.log('搜索按钮被点击')
}
</script>
属性说明
| 属性名 | 类型 | 默认值 | 说明 |
|---|---|---|---|
| title | String | '标题' | 导航栏标题 |
| backgroundColor | String | '#ffddca' | 背景颜色 |
| titleColor | String | '#3d3d3d' | 标题颜色 |
| iconColor | String | '#888' | 图标颜色 |
| showBack | Boolean | false | 是否显示返回按钮 |
| showSearch | Boolean | false | 是否显示搜索按钮 |
| titleAlign | String | 'center' | 标题对齐方式 ('left', 'center', 'right') |
| onBack | Function | null | 返回按钮点击回调函数 |
| onSearch | Function | null | 搜索按钮点击回调函数 |
事件说明
| 事件名 | 说明 | 回调参数 |
|---|---|---|
| back | 返回按钮点击事件 | 无 |
| search | 搜索按钮点击事件 | 无 |
样式定制
组件使用 SCSS 编写,支持通过 CSS 变量或覆盖样式进行定制。主要样式类:
.layout- 整体布局容器.navbar- 导航栏容器.titleBar- 标题栏区域.title- 标题文本.back-button- 返回按钮.search- 搜索按钮
注意事项
- 组件会自动处理状态栏高度,确保在不同设备上正确显示
- 返回按钮默认使用
navigateBack(1)进行页面返回 - 搜索按钮需要配合
showSearch属性使用 - 标题对齐方式会影响按钮的布局,建议根据实际需求调整