无法使用$(' .foo')。('点击',' .bar',使用jQuery和TypeScript

时间:2017-10-21 11:48:28

标签: jquery typescript events

我在项目中使用TypeScript和jQuery,我需要使用jQuery' s on来收听事件:

const $previewListWrp: jQuery<HTMLElement> = $('.js-preview-list-wrp').first();

$previewListWrp.on('click', '.btn-action.remove', (evt: Event): void => {
  let $box: JQuery<HTMLElement> = $(evt.target).closest('.js-preview-wrp');
  console.log($box.data());
});

然而,我收到错误

  

类型的参数&#39;&#34;点击&#34;&#39;不能分配给类型的参数&#39; PlainObject void&gt; | EventHandlerBase

刚刚开始一个新项目并安装了最新版本的TypeScript,jQuery和@ types / jQuery。

enter image description here

2 个答案:

答案 0 :(得分:8)

尝试将evt:EventTarget更改为evt:JQuery.Event

答案 1 :(得分:1)

您可以使用d3 v3.*方法的替代签名,其中第一个参数确实是一个对象,并执行:

on