最近在看同事的代码,发现他用到了一个页面路由进入绑定回车事件,页面离开的时候解绑回车事件。下面记录一下方法:
解决步骤1:路由进入
// 在组件进入路由之前调用beforeRouteEnter(to, from, next) {// 在这里执行进入路由之前的逻辑// 调用 next() 继续导航next((vm) => {// 在导航完成后,访问组件实例window.addEventListener('keyup', vm.onKeyUp);});},
上面的回车事件:
// 回车事件
onKeyUp(event) {if (event.key === 'Enter') {// 处理回车事件this.search_user();}
},
解决步骤2:路由离开
beforeRouteLeave(to, from, next) {// 在离开路由之前执行的逻辑// 例如,移除键盘事件监听器window.removeEventListener('keyup', this.onKeyUp);next(); // 继续导航
},
结束!!!多多积累,多多收获!!!