在我的PWA中,我为应用程序处于独立模式时实现了后退和前进导航按钮。 为此,我将Location service注入组件,然后:
Sum
我现在要做的是在没有可用的前向导航时禁用前进按钮,并且在没有可用的向后导航时(例如,刚刚启动的应用程序)禁用后退按钮。任何想法如何实现这一目标?位置API似乎无法满足此要求。
答案 0 :(得分:2)
是的,从API文档看来确实很清楚。
您可以自己一个计数器来简单地跟随它:
private history_depth = 0;
public onForward() {
this.history_depth -= 1;
this.location.forward();
}
public onBack() {
this.history_depth += 1;
this.location.back();
}
public isBackEnabled() {
return this.history_depth > 0;
}
修改:
但是,这并不完美:通过浏览器手动返回无法正常工作。这在this SO post中进行了解释(tldr;由于安全问题,因此不可能),建议将“后退”按钮保持启用状态-如果没有后退历史记录,则为无操作。
此外,也许the history API可以解决一些问题。这不是完美的,但是也许有一些案例可以成功解决。您可以在上述SO帖子的各种答案中看到示例。