我有什么?
var click = fromEvent(button, 'click');
var animation = from([]).pipe(
concat(
animateDiv(300, 600),
animateDiv(-300, 600),
animateDiv( 300, 300),
animateDiv(-300, 300)
));
click.pipe(
flatMap(() => animation),
).subscribe();
每个animateDiv()返回一个Observable,该对象在动画结束后即完成。我使用“ concat()”将它们链接在一起。
所以现在我不想在另一个动画链仍在运行时在“ click”上启动另一个动画...
实现此目标的最佳方法是什么?
答案 0 :(得分:0)
找到了解决方案:audit
var animation = concat(
animateDiv(300, 600),
animateDiv(-300, 600),
animateDiv(300, 300),
animateDiv(-300, 400),
);
click.pipe(
audit(() => animation)
).subscribe();