这个接口调用后的配置禁用状态只跟着当前网页内容生命周期走, history.goback() 后网页内容被新的页面替代,配置禁用信息也会清空。
因此还是要每个页面的加载过程中都要执行 js 调用 jsapi 接口。
如果因为页面设置了 Cache-Control ,使得 history.goback() 是从 webkit 内存里恢复页面,导致页面内 js 不会再次执行,可以监听页面恢复事件,执行一些必须的操作。
window.addEventListener('pageshow', (e) => {
if (e.persisted) {
location.reload();
}
});