当前位置: 首页 > news >正文

微信小程序根据动态权限展示tabbar

微信小程序自定义 TabBar 后根据权限动态展示tabbar

在微信小程序开发中,自定义 TabBar 可以让应用更具灵活性和个性化。特别是在用户根据不同权限展示不同的 TabBar 内容时,正确的实现方法能够提升用户体验。本篇文章将分享如何使用事件总线实现权限变动时动态更新自定义 TabBar 的内容。

文章目录

  • 微信小程序自定义 TabBar 后根据权限动态展示tabbar
    • 1. 实现事件总线
    • 2. 权限变动时的事件发布
    • 3. 在自定义 TabBar 中接收权限变化
      • 3.1. 根据权限动态更新 TabBar
    • 4. 在页面显示时设置选中的 TabBar

1. 实现事件总线

首先,我们需要实现一个简单的事件总线,用于管理应用中的各类事件。我们可以通过以下代码创建一个事件总线utils:

// eventBus.js
const eventBus = {eventList: new Map(), // 存储所有事件和对应的订阅者on(event, callback) {if (!this.eventList.has(event)) {this.eventList.set(event, new Set());}this.eventList.get(event).add(callback);},off(event, callback) {if (this.eventList.has(event)) {const callbacks = this.eventList.get(event);callbacks.delete(callback);if (callbacks.size === 0) {this.eventList.delete(event);}}}

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • ChatGPT:@JSONField 有什么用
  • 【LeetCode】字母异位词分组
  • [Meachines] [Easy] Blocky Jar包反编译
  • 【HarmonyOS】应用推送使用个推SDK如何实现?
  • MySQL面试篇章—MySQL锁机制
  • 【C++ —— 认识哈希和unordered_set、unordered_map的介绍及模拟】
  • 【学习笔记】Redis学习笔记——第17章 集群
  • Mojo简介
  • 打卡第22天------回溯算法
  • 深度学习系列70:模型部署torchserve
  • python 裁剪图片
  • 《梁宁产品思维30讲》是一门深入剖析产品思维、产品认知框架的课程
  • Windows11和Win10如何彻底永久关闭Windows defender
  • MySQL可重复读的隔离机制下是否彻底解决了幻读?
  • 云服务部署项目(Spring + Vue)
  • AHK 中 = 和 == 等比较运算符的用法
  • CentOS学习笔记 - 12. Nginx搭建Centos7.5远程repo
  • Java,console输出实时的转向GUI textbox
  • java取消线程实例
  • java中的hashCode
  • js 实现textarea输入字数提示
  • Linux快速配置 VIM 实现语法高亮 补全 缩进等功能
  • Logstash 参考指南(目录)
  • mysql innodb 索引使用指南
  • PHP 小技巧
  • spring cloud gateway 源码解析(4)跨域问题处理
  • Synchronized 关键字使用、底层原理、JDK1.6 之后的底层优化以及 和ReenTrantLock 的对比...
  • 从 Android Sample ApiDemos 中学习 android.animation API 的用法
  • 从零开始在ubuntu上搭建node开发环境
  • 面试遇到的一些题
  • 前端面试之闭包
  • 浅谈Kotlin实战篇之自定义View图片圆角简单应用(一)
  • 深入 Nginx 之配置篇
  • 什么软件可以剪辑音乐?
  • 微服务核心架构梳理
  • 移动端解决方案学习记录
  • 继 XDL 之后,阿里妈妈开源大规模分布式图表征学习框架 Euler ...
  • 正则表达式-基础知识Review
  • ​sqlite3 --- SQLite 数据库 DB-API 2.0 接口模块​
  • ​业务双活的数据切换思路设计(下)
  • ​字​节​一​面​
  • # 日期待t_最值得等的SUV奥迪Q9:空间比MPV还大,或搭4.0T,香
  • #我与虚拟机的故事#连载20:周志明虚拟机第 3 版:到底值不值得买?
  • $(this) 和 this 关键字在 jQuery 中有何不同?
  • (1)SpringCloud 整合Python
  • (2.2w字)前端单元测试之Jest详解篇
  • (2020)Java后端开发----(面试题和笔试题)
  • (MIT博士)林达华老师-概率模型与计算机视觉”
  • (附源码)springboot 房产中介系统 毕业设计 312341
  • (一)插入排序
  • (转)Oracle 9i 数据库设计指引全集(1)
  • *_zh_CN.properties 国际化资源文件 struts 防乱码等
  • .Net FrameWork总结
  • .NET 自定义中间件 判断是否存在 AllowAnonymousAttribute 特性 来判断是否需要身份验证
  • .NET成年了,然后呢?