我发现在微信里面,将页面添加浮窗后再重新进入,页面的返回功能居然不生效了!?

“返回”功能的代码是用history.go(-1)实现的,不生效的话,那么极有可能是因为添加浮窗的问题,历史栈被清空了,所以找不到历史栈中的上一页。

上网一搜,果然有人跟我遇到了一样的问题,解决方案如下:

/**
 * 返回
 */
goBack = () => {
    // 解决微信浮窗后,页面历史栈被清空的问题
    if (history.go(-1) === undefined) {
        const url = 'xxx';
        location.replace(url);
    }
}