我有一个对象数组,根据对象的类型键代表不同的动画。我使用setTimeout. 我正在反应组件的函数内运行下面的代码。
animations.forEach((animation, index) => {
switch (animation.type) {
case "animation-type": {
setTimeout(() => {
//change the style of some elements
}, index * 1000);
break;
}
...
default:
break;
}
});
上面的整个过程按预期正常运行,只是一旦开始我就无法停止。我希望能够出于某种原因在某个时刻停止该过程,并取消等待轮到的剩余动画。
我正在寻找一种简单的方法来以声明方式执行此操作,我能想到的唯一选择是使用 rxjs 中的可观察量来使该过程可取消。然而,我很难调整上面的过程来使用可观察量,因为我对 rxjs 还很陌生。
长话短说,我想让这个过程可以取消。
MMMHUHU
梵蒂冈之花
相关分类