抛出具有不同名称的回调函数
Throwing Callback functions with different names
我是编码新手,这是我的第一个问题,所以我会尽量解释清楚。
我有一个图像滑块,我正在尝试更改每张幻灯片中的文本。我在 JavaScript 中有 Mutation Observer,它正在观察 class 列表中 class 的变化,所以当 div 有 "active" class 时,我抛出一个回调函数。
轮播里面有很多图片滑块;
carousel.forEach(e=>{
let i= 1;
let workOnClassAdd=`workOnClassAdd${i}`
new ClassWatcher(e, 'active',workOnClassAdd,workOnClassRemoval)
i++;
})
function workOnClassAdd1(){};
function workOnClassAdd2(){};
.
.
所以在这段代码中,我试图创建具有不同功能的观察者,但 workOnClassAdd 看起来像一个字符串,所以我得到了 "this is not a func" 错误。我如何在此 forEach 方法中抛出不同的变量?
总之谢谢,写得很好 :)
您可以编写 return 函数。类似于:
function getCallbacksFor(iValue) {
return [
function workOnAdd() {
console.log('add class work for', iValue);
},
function workOnRemove() {
console.log('remove class work for', iValue);
},
];
}
carousel.forEach((e, idx) => {
new ClassWatcher(e, 'active', ...getCallbacksFor(idx))
})
我是编码新手,这是我的第一个问题,所以我会尽量解释清楚。
我有一个图像滑块,我正在尝试更改每张幻灯片中的文本。我在 JavaScript 中有 Mutation Observer,它正在观察 class 列表中 class 的变化,所以当 div 有 "active" class 时,我抛出一个回调函数。
轮播里面有很多图片滑块;
carousel.forEach(e=>{
let i= 1;
let workOnClassAdd=`workOnClassAdd${i}`
new ClassWatcher(e, 'active',workOnClassAdd,workOnClassRemoval)
i++;
})
function workOnClassAdd1(){};
function workOnClassAdd2(){};
.
.
所以在这段代码中,我试图创建具有不同功能的观察者,但 workOnClassAdd 看起来像一个字符串,所以我得到了 "this is not a func" 错误。我如何在此 forEach 方法中抛出不同的变量?
总之谢谢,写得很好 :)
您可以编写 return 函数。类似于:
function getCallbacksFor(iValue) {
return [
function workOnAdd() {
console.log('add class work for', iValue);
},
function workOnRemove() {
console.log('remove class work for', iValue);
},
];
}
carousel.forEach((e, idx) => {
new ClassWatcher(e, 'active', ...getCallbacksFor(idx))
})