微信小程序右上角存在原生胶囊按钮(菜单/关闭),宽度在不同机型下约为 87px。当前项目所有页面均使用 navigationStyle: custom 自定义导航栏,并把部分操作按钮(通知、新增、今天等)放在右上角,导致部署到微信真机后胶囊遮挡功能按钮,影响使用。需要引入全局统一的胶囊安全区组件,让顶部栏右侧操作区自动避让胶囊。
CapsuleSafeArea,基于 uni.getMenuButtonBoundingClientRect() 计算右侧安全宽度。TopBar 组件,右侧插槽自动包裹在安全区内,保证操作按钮不会被胶囊遮挡。pages/home/home(各角色首页右上角通知铃铛)pages/schedule/schedule(排班页右上角「今天」「新增排班」)pages/task/task(任务页右上角「新增/发布」按钮)weapp-capsule-safearea: 微信小程序胶囊安全区适配,提供全局组件和 TopBar 集成。src/components/common/TopBar.vue、新增 src/components/common/CapsuleSafeArea.vue、src/pages/home/home.vue、src/pages/schedule/schedule.vue、src/pages/task/task.vue。uni.getMenuButtonBoundingClientRect() 与 uni.getSystemInfoSync()。