环境:taro,微信小程序
状况:tabbar采用自定义Tabbar在tabbar页面上调出弹窗,弹窗内容被自定义tabbar遮挡
处理方法:利用发布订阅控制tabbar显示隐藏
具体代码实现:
-
在
global.js文件中暴露Events事件import Taro, { Events as TaroEvents } from '@tarojs/taro'; //... const events = new TaroEvents() const Events = { emit(name, arg) { events.trigger(name, arg); }, on(name, handler) { events.on(name, handler); }, off(name, handler) { events.off(name, handler); }, }; Object.assign(global, { //... Events, }) -
自定义tabbar订阅
-
对应的弹窗显示时触发发布
-
只需在useEffect中调用Events.emit触发即可
Events.emit(boolean);
-