在VueJS / Javascript(promises)中存储然后触发顺序事件的方法

时间:2018-06-14 11:14:08

标签: javascript vue.js promise event-handling queue

在Javascript上对事件进行排队然后以正确的顺序(FIFO)依次触发它们的正确和最佳方法是什么。

我做了类似的事情:

https://jsfiddle.net/zjsh0xq3/

我的组件从Vuex / Vue实例获取状态,并根据DOM位置进行同步(如果这些组件将从外部调整大小)。对于这个例子,我创建了List组件的项目位置,但想法是一样的。

因此,在ListItem上触发方法后,父组件List将这些事件(操作数据)存储在数组中。然后,事件以正确的顺序一个接一个地被触发,但是只有在$emit被回复的情况下向List发出回调时,在Vuex / Vue实例中已经更改了List的状态。

有没有人有更好的想法来解决这个案例或某个现成的排队事件工具?

我想到了本文中的承诺: https://gist.github.com/anvk/5602ec398e4fdc521e2bf9940fd90f84

但我不知道在调用回调之前如何防止承诺被解决。

感谢您的建议!

0 个答案:

没有答案