需求
有些页面我自定义了转发,但是我还是设置了全局转发我该如何去判断。他如果当前页面添加了自定义转发的话,就不需要通过全局转发的条件
引发的bug
全局配置了onShareAppMessage
当你再单页面自定义转发的时候,你会发现你的页面自定义转发的被覆盖了,从而呢就实现不了想要的需求
如何全局转发呢?
我这里是taro
环境的
//全局分享
const page = Taro.getCurrentInstance().page
page.onShareAppMessage = () => {
return {
path // 分享路径
}
}
注意全局全局,要写到最上层
的文件中
如何解决这个问题
判断有没有这个onShareAppMessage
事件
if (page && !page.onShareAppMessage) {
page.onShareAppMessage = () => {
return {
path // 分享路径
}
}
}
配置了onShareAppMessage
转发的页面
输出出来的就是一个函数,有值
没配置了onShareAppMessage
转发的页面
返回的就是undefined,就可以检测到他没有配置转发。
最后的逻辑就是
如果,我这个页面自定义转发的话,我就不进行统一配置转发。然后,我这个页面没有自定义转发的话就进行统一配置。