Uniapp自定义导航栏

1.准备自定义导航栏组件

html 复制代码
<template>
  <view class="navbar">
    <view class="logo">
      <image class="logo-image" src="@/static/logo.png"></image>
    </view>
    <!-- 搜索条 -->
    <view class="search">
      <text class="icon-search">搜索商品</text>
      <text class="icon-scan"></text>
    </view>
  </view>
</template>

<style lang="scss">
/* 自定义导航栏样式 */
    <!-- 略-->
</style>

2.修改页面配置,隐藏默认导航栏,修改文字颜色

XML 复制代码
// src/pages.json
{
  "path": "pages/index/index",
  "style": {
    "navigationStyle": "custom", // 隐藏默认导航
    "navigationBarTextStyle": "white",
    "navigationBarTitleText": "首页"
  }
}

3.样式适配 -> 安全区域

不同手机的安全区域不同,为防止页面内容被遮挡,通过 uni.getSystemInfoSync() 获取屏幕边界到安全区的距离

html 复制代码
<script>
  // 获取屏幕边界到安全区域距离
  const { safeAreaInsets } = uni.getSystemInfoSync()
</script>

<template>
  <!-- 顶部占位 -->
  <view class="navbar" :style="{ paddingTop: safeAreaInsets?.top + 'px' }">
    <!-- ...省略 -->
  </view>
</template>

4.首页中即可引入自定义组件

相关推荐
VOLUN9 分钟前
PageLayout布局组件封装技巧
前端·javascript·vue.js
掘金安东尼9 分钟前
React 的 use() API 或将取代 useContext
前端·javascript·react.js
牛马喜喜9 分钟前
记录一次el-table+sortablejs的拖拽bug
前端
一枚前端小能手14 分钟前
⚡ Vite开发体验还能更爽?这些配置你试过吗
前端·vite
anyup30 分钟前
🔥 🔥 为什么我建议你使用 uView Pro 来开发 uni-app 项目?
前端·vue.js·uni-app
Skelanimals31 分钟前
Elpis全栈框架开发总结
前端
蓝胖子的小叮当34 分钟前
JavaScript基础(十三)函数柯里化curry
前端·javascript
孪创启航营38 分钟前
数字孪生二维热力图制作,看这篇文章就够了!
前端·three.js·cesium
宫水三叶的刷题日记41 分钟前
真的会玩,钉钉前脚辟谣高管凌晨巡查工位,小编随后深夜发文
前端·后端·面试
zzywxc7871 小时前
AI 行业应用:金融、医疗、教育、制造业领域的落地案例与技术实现
android·前端·人工智能·chrome·金融·rxjava