我想知道我可以修改作为参数传递给类的方法吗?
例如,假设我创建了类Column
,我将在其中创建列,在此列上添加EventListener
,并将回调作为参数接收。但我还想通过添加特殊行来修改此方法,该行将保存单击或取消单击的列
。
class TableColumn {
column = document.createElement('th');
clickState = false;
constructor(callback) {
this.column.textContent = 'sort ascending / descending';
this.column.addEventListener('click', callback);
}
}
我知道我可以通过操作元素属性来实现这一点,例如:
colum.setAttribute('was-sorted', 'false');
或者通过切换类:
column.classList.toggle('sorted');
最佳答案
如果我理解您的问题,您可以通过在对 callback
的调用前加上您想要的行为来实现您想要的目标:
constructor(callback) {
this.column.textContent = 'sort ascending / descending';
this.column.addEventListener('click', function(ev) {
// Your desired code here
// Call the callback
callback(ev);
});
}
关于javascript - 是否可以修改作为参数传递给类的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57737647/