账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    mixins里面addEventListener监听某个事件后再removeEventListener移除监听无效?
    64
    0
    mixins里面设置监听keyup事件后启动搜索功能,但监听搜索完后需要移除该事件,发现设置removeEventListener无效,为什么尼代码: mounted () { this.$nextTick(() => { document.addEventListener('keyup', e => { // 在这里判断 是否是回车键 && e.target 是否是 el-input console.log(e, e.target,e.target._prevClass,e.type,"e.target") console.log(e.key,"e.key") console.log(e.target._prevClass,"prevClass") if(e.key=="Enter"&&e.target._prevClass=="el-input__inner"){ console.log(this,"999") this.search() } }) }) }, beforeDestroy () { document.removeEventListener('keyup',this.search()) },
    0
    打赏
    收藏
    点击回答
        全部回答
    • 0
    • 在事件监听和移除之间使用addEventListener可能会导致事件监听器在某些情况下被移除,而不是完全移除。这可能是由于事件监听器被添加到了其他的事件处理器中,或者事件监听器是在事件触发后立即被添加的。

      如果你需要确保移除的事件监听器是完全移除的,你可以使用addEventListener和removeEventListener的第二个参数(即一个函数)。这个函数将被用于移除事件监听器。

      例如:

      ```javascript addEventListener('myEvent', function(event) { // 在这里添加你的监听器 }, false); // 使用false参数移除监听器

      removeEventListener('myEvent', function(event) { // 在这里移除你的监听器 }, false); // 使用false参数移除监听器 ```

      在这个例子中,addEventListener函数将被用于添加一个事件监听器,而removeEventListener函数将被用于移除一个事件监听器。第二个参数(即函数)将被用于在事件触发后移除监听器。

    更多回答
    网站公告
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部