Uniapp+Vue3 使用父传子方法实现自定义tabBar

一、流程介绍

代码编写顺序

  • 第一步:pages.json配置tabbar并配置custom配置项
  • 第二步:编写自定义tabbar组件的静态代码(最好使用v-for去写,仿照原生tabbar逻辑)
  • 第三步:各tabbar页面调用tabbar组件,并传入tabbar索引值
  • 第四步:tabbar组件接受传入的值,通过传入索引值判断高亮对象,点击另外的tabbar图标时跳转到相应页面

页面执行顺序

  • 第一步:跳转到新的tabbar页面,该组件中的数据重置
  • 第二步:tabbar页面向组件传入索引并保存在currentIndex中
  • 第三步:v-show判断相应tabbar图标高亮
  • 第四步:点击新的tabbar,执行handleItemClick操作,跳转到新的tabbar页面(回到第一步)

二、代码

在page.json中定义tabbar

在page.json中定义tabbar并将custom设置为true

启用自定义tabbar的配置,可以将默认的tabbar隐藏

仍然使用uniapp默认的tabbar定义方式是为了防止跳转过程中页面栈无限增长

// 用户操作路径: 学习页 → navigateTo 情绪页 → navigateTo 研友页 // 页面栈:[学习, 情绪, 研友] ← 越来越长! // 用户连续点击tab 10次: // 页面栈会有10个页面!内存占用高,容易崩溃 
在这里插入图片描述

创建自定义tabbar组件

创建一个tabBarList数组(与page.json中tabBar中的list相同的结构),然后使用v-for去写更好。
本案例中选中状态是为图标加上高亮色块,且各个tabbar图标宽高都不相同,所以并没有采用这种写法

<scriptsetup>import{ref}from"vue"const tabBarList =ref([{"pagePath":"pages/study/study","text":"学习"},{"pagePath":"pages/mood/mood","text":"情绪"},{"pagePath":"pages/friend/friend","text":"研友"},{"pagePath":"pages/AI/AI","text":"芯研"},{"pagePath":"pages/my/my","text":"我的"}])</script><template><viewclass="container"><viewclass="item"@click="handleItemClick(0)"><imagesrc="@/static/tabBar/学习.png"style="width: 62rpx;height: 52rpx;z-index:9999;"/><view>学习</view><viewclass="circle"></view></view> ... </view></template><stylelang="scss"scoped>.container{width:100%;position:fixed !important;bottom: 0rpx;display:flex;justify-content: space-evenly;padding-bottom:40rpx;padding-top:20rpx;background-color: white;z-index: 99999;.item{display:flex;flex-direction: column;gap:10rpx;align-items: center;width: 50rpx;font-size: 19rpx;font-weight: 500;position:relative;.circle{position:absolute;top:-10rpx;left:10rpx;width: 50rpx;height: 50rpx;background:rgba(255, 219, 217, 0.54);border-radius: 50%;}}}</style>

在tabbar页面中使用组件

在tabbar页面中使用组件,并传入页面索引

在这里插入图片描述


在这里插入图片描述

接受传入数据以及选中后高亮、跳转

<scriptsetup>import{ref}from"vue"const props =defineProps({currentIndex:Number }) 跳转相应的tabbar页面 consthandleItemClick=(index)=>{ uni.switchTab({url:'/'+ tabBarList.value[index].pagePath })}const tabBarList =...])</script><template><viewclass="container"><viewclass="item"@click="handleItemClick(0)"><imagesrc="@/static/tabBar/学习.png"style="width: 62rpx;height: 52rpx;z-index:9999;"/><view>学习</view> 展示高亮色块 <viewclass="circle"v-show="props.currentIndex === 0"></view></view> ... </view></template>

Read more

2025.10.17 更新 AI绘画秋葉aaaki整合包 Stable Diffusion整合包v4.10 +ComfyUI整合包下载地址

2025.10.17 更新 AI绘画秋葉aaaki整合包 Stable Diffusion整合包v4.10 +ComfyUI整合包下载地址

2025.10.17 更新 AI绘画秋葉aaaki整合包 Stable Diffusion整合包v4.10 +ComfyUI整合包下载地址 * @[TOC](2025.10.17 更新 AI绘画秋葉aaaki整合包 Stable Diffusion整合包v4.10 +ComfyUI整合包下载地址) * 🌈 Stable Diffusion整合包(秋葉aaaki整合版) * 📦 【下载链接】 * 💡 英特尔 CPU 用户特别提醒 * 🔧 AMD 显卡专用方案 * ⚙️ 常见问题与解决方案 * 🧠 ComfyUI 整合包(秋葉aaaki定制优化版) * 📥 【下载链接】 * 🚀 更新日志(2025.2.4 v1.6) * 🧩 报错解决 关键词建议(自动覆盖百度、必应等搜索) AI绘画整合包下载、Stable Diffusion整合包、ComfyUI整合包、秋葉aaaki整合包、AI绘图工具、AI绘画模型、

皮带输送机巡检机器人 7×24h 全域无死角智能巡检方案

皮带输送机巡检机器人 7×24h 全域无死角智能巡检方案

在工业生产领域,皮带输送机是各行业产线物料输送的核心装备,其稳定连续运行直接关乎生产效率与企业经济效益。针对工业皮带输送线长距离布置、多高空作业、人工巡检难度大、异常发现不及时等行业共性痛点,皮带输送机巡检机器人应运而生,以全维度智能检测、高适配随线运行、高精度数据分析的核心能力,全面替代人工巡检模式,实现工业皮带输送线的无人化、智能化、全时段巡检,为各行业产线运维升级提供专业、高效的一体化解决方案。 一、高适配随线巡检,全工况实现全域无死角覆盖 武汉雾都巡检机器人采用紧凑化定制尺寸设计,可精准匹配不同工业产线轨道的宽度、高度限制,顺利通过提升机、T 型、L 型、十字型等各类异形轨道,完美适配多规格轨道布局需求,无需对现有产线进行大规模改造,适配性拉满。 巡检机器人可与皮带输送机同步匀速运行,能自适应轨道不平、导向板精度有限等各类工业实际工况,运行过程无卡滞、无轨迹偏移,实现随线不间断巡检。同时可全面覆盖人工难以抵达的高空区域、设备死角、皮带两侧等传统巡检盲区,真正实现工业皮带输送线的全域、无死角巡检,让设备异常无处遁形。 二、全维度智能检测,分级精准实现异常提前预警 武

保姆级教程!零基础解锁大疆无人机开发:MSDK/PSDK/ 上云 API 实战指南[特殊字符]

保姆级教程!零基础解锁大疆无人机开发:MSDK/PSDK/ 上云 API 实战指南[特殊字符]

保姆级教程!零基础解锁大疆无人机开发:MSDK/PSDK/上云API实战指南🚁 摘要 作为无人机领域的「苹果生态」,大疆行业开发体系自2014年开放SDK以来,已吸引超10万开发者构建3000+行业解决方案。本文基于官方最新《行业生态入门指南》,深度解析MSDK移动端开发、PSDK负载硬件开发、上云API云端集成三大核心能力,附全流程资源清单与生态认证攻略,助你从「无人机小白」变身行业开发高手! 目录 * 一、大疆开发生态全景:为什么选择大疆二次开发? * 二、MSDK实战:5分钟开发你的首个无人机控制App * 三、PSDK硬核:让无人机秒变「万能挂载平台」 * 四、上云API进阶:构建无人机云端大脑 * 五、开发者必备:技术支持与生态认证全流程 一、大疆开发生态全景:为什么选择大疆二次开发? 🌟 生态优势 * 低门槛:无需自研飞控算法,直接调用大疆底层能力(如飞行稳定、图传通信); * 高兼容:支持Matrice 350 RTK、

OpenClaw 接入飞书机器人保姆级教程

OpenClaw 接入飞书机器人保姆级教程

如果你的 OpenClaw 已完成初始部署、WebUI 可正常收发回复,现在想接入飞书机器人,这篇教程会带你从创建机器人到配置完成,一步到位。 相信你在部署 OpenClaw 时已经踩过不少坑,这篇文章会帮你尽量避开飞书对接中的常见问题,少走弯路。废话不多说,教程正式开始!原文地址 内置飞书插件 如果您使用的是最新版本的 OpenClaw那么已经内置了 Feishu 插件,通常不需要让我们单独进行安装。 如果您使用的是之前比较旧的版本,或者是没有内置的 Feishu 的插件,可以手动进行安装,执行下方命令: 创建飞书机器人 我们先来创建飞书的应用,我们可以复制下方地址进行一键直达 创建企业自建应用 打开后,我们点击【创建企业自建应用】,如果您还没有飞书账号的话,请先注册飞书的账号后再进行创建应用 我们创建企业自建应用然后输入应用名称和应用描述,还有应用图标,我们都可以自定义进行上传,或者选择其他照片当作应用图标。输入完之后我们点击创建 获取 AppID 和 AppSecret 我们点击凭证与基础信息一栏查看我们的App ID 和 App