如何在打字稿中使用JQuery的每个函数

Pal*_*har 4 jquery typescript

我想得到每个复选框的class/attr.代码示例如下.

  jQuery("input[type='checkbox']").each(()=> {
      let checkboxID = jQuery(this).attr("class");
      console.log(checkboxID);//output undefined
      console.log(this.atc1List); //typescript variable 
    });
Run Code Online (Sandbox Code Playgroud)

Pra*_*lan 8

内部箭头函数this引用您的类实例,因此更新您的代码如下,其中回调中的第二个参数引用该元素.

jQuery("input[type='checkbox']").each((i, ele) => {
  let checkboxID = jQuery(ele).attr("class");
  console.log(checkboxID);//output undefined
  console.log(this.atc1List); //typescript variable 
});
Run Code Online (Sandbox Code Playgroud)

根据MDN Docs:

箭头函数表达式具有比函数表达式更短的语法,并且没有自己的this,arguments,super或new.target.