vue实现一个队列自动机

Posted 小章鱼哥

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了vue实现一个队列自动机相关的知识,希望对你有一定的参考价值。

最近比较忙,有时间完善思路。

关键代码

export function promiseQueue(executors: any[]) 
  return new Promise((resolve, reject) => 
    if (!Array.isArray(executors))  executors = Array.from(executors); 
    if (executors.length <= 0)  return resolve([]); 

    const res: any[] = [];
    executors = executors.map((x, i) => () => 
      const p = typeof x === 'function' ? new Promise(x) : Promise.resolve(x);
      p.then(response => 
        res[i] = response;
        if (i === executors.length - 1) 
          resolve(res);
         else 
          executors[i + 1]();
        
      , reject);
    );
    executors[0]();
  );

以上是关于vue实现一个队列自动机的主要内容,如果未能解决你的问题,请参考以下文章

Vue Snackbar 消息条队列显示,依次动画消失的实现

如何使用php、html及消息队列实现订单超时自动关闭订单

Vue中nextTick的简单理解

vue自定义指令directives实现自动点击事件及自动点击第一个按钮

vue自定义指令directives实现自动点击事件及自动点击第一个按钮

rabbitmq实现延迟队列