大佬们有没有 使用箭头函数 不改变 this指向的经验
比如说 lis.addEventlistener('click', () => {
console.log(this); // 这里我不想this 指向window 而是代表点击者本身 有办法解决么
})
不允许使用 lis.addEventlistener('click', function() {
})
lis.addEventlistener('click', (e) => {
console.log(e.target); // 触发事件的元素
console.log(e.currentTarget); // 绑定事件的元素
})
你可以使用function (){}
直接用一个bind方法改变指向
function lis() {
//获取button,id为lis
return document.getElementById('lis')
}
lis().addEventListener('click',()=>{
//lis.call(this)指向lis
console.log(lis.call(this));
function lis() {
//获取button,id为lis
return document.getElementById('lis')
}
lis().addEventListener('click',()=>{
//lis.call(this)指向lis
console.log(lis.call(this));
})
再发一次,不是很会发这个