五个页面怎么共同控制侧边栏组件的显示和隐藏?
发布于 6 年前 作者 xia91 9792 次浏览 来自 官方Issues

我有一个侧边栏,封装成组件,在五个页面中引用了,怎么在一个页面中点击侧边栏显示或者隐藏后,其他页面也同时显示和隐藏?求大佬告知。

4 回复

在app.js定义一个变量为 true 在每个页面onShow接收到  关闭后改为false

为什么不把五个页面做成一个?

如果你的页面是通过nav跳转的话,试试把一个关键变量存储到storage当中,其他页面onShow的时候去get这个变量再完成相应逻辑

参考这个页面

https://developers.weixin.qq.com/miniprogram/dev/api/storage/wx.setStorageSync.html

A页面-》B页面-》C页面,在C页面上关闭了菜单,然后后退,A、B页面依然会显示菜单;

测试会给你报bug的,可以研究下页面间通信或组件间通信;再加上楼上2位的方案就完美了

https://www.jb51.net/article/110067.htm  

页面间通信我们使用 方式三:eventBus(或者叫PubSub)方式

业务可控,逻辑清晰

page onUnload 时记的 off 掉监听

回到顶部