Javascript 将参数传递给bind()时事件丢失

Javascript 将参数传递给bind()时事件丢失,javascript,Javascript,我正在尝试将回调与事件绑定,但它在传递回调时丢失了事件。这是我的密码 HTML: 现在,如何将事件和回调都传递给处理程序?我不会绑定函数,而是执行:[..].addEventListener'click',event=>this.listenerevent,cb 请参见此处的原因: 函数handleClickListenere,回调{ console.log“单击”; 回调; } 函数侦听器{ document.addEventListener'click',e=>handleClickList

我正在尝试将回调与事件绑定,但它在传递回调时丢失了事件。这是我的密码

HTML:


现在,如何将事件和回调都传递给处理程序?

我不会绑定函数,而是执行:[..].addEventListener'click',event=>this.listenerevent,cb

请参见此处的原因:

函数handleClickListenere,回调{ console.log“单击”; 回调; } 函数侦听器{ document.addEventListener'click',e=>handleClickListener,e=>console.loge; }
startListener您同时获得回调和事件。像这样修改您的代码,您将看到您的回调被调用。第一个参数是回调,第二个参数是事件

T类{ 监听器e,c{ console.loge; console.logtypeofc; E //行政长官 } 跑{ document.getElementById'click'。addEventListener'click',this.listener.bindthis,e=>{ console.log“我被召唤”; }; } } 新T.run;
单击是否将回调绑定为第一个参数?如果你想那样使用bind,它应该是handlerc,e。
<button id="click">click</button>
<script>
    class T {
        handler (e, c) {
            console.log(e)
            console.log(typeof c)
            //c(e)
        }

        run () {
            document.getElementById('click').addEventListener('click', this.handler.bind(this, e => {
                console.log(e)
            }))
        }
    }

    (new T).run()
</script>
handler (e) {
   console.log(e)
}

run () {
  document.getElementById('click').addEventListener('click', this.handler.bind(this))
}