使用vue2开发的前端项目,当组件使用keepalive进行缓存之后,项目里有个全局的自定义指令
代码如下:
```javascript
Vue.directive('enter',{
inserted(el){
window.addEventListener('keydown',(even)=>{
if(even.code === 'Enter'){
el.click()
}
})}},
unbind(){
winddow.onkeydown=null
}
)
,很多组件都使用了该指令,我理解的是当组件销毁的时候自动执行unbind()方法,但是因为现在组件缓存了,不销毁,没办法执行该方法,导致事件无法解绑,这就使得 ,当我按下enter键的时候,多个缓存的页面绑定该指令的按钮都会执行click()方法,有什么办法帮我解决一下该问题啊