我对 Vue 很陌生,我试图弄清楚如何在 vuejs 上监听 onpopstate 事件以在它发生时启动特定功能。我浏览了路由器文档,但在 vue 上找不到 onpopstate 事件处理程序的等效项。
谢谢你的帮助,威尔
如果您vue-router
在 SPA 中使用,那么我只需将其放在基础组件的已创建挂钩中:
created() {
// Attach onpopstate event handler
window.onpopstate = function(event) {
alert("location: " + document.location + ", state: " + JSON.stringify(event.state));
};
},
因为基础组件提供所有视图,您应该会发现该事件将在整个应用程序中触发。
这是向您展示此设置如何工作的 JSFiddle:https ://jsfiddle.net/bjb8ukb8/