记一个同事在开发过程中遇到的bug

50 阅读1分钟

项目技术栈:vue

Bug描述:

  • 代码逻辑模拟

image.png

  • 同事疑问:我的test不是await了吗,为什么打印顺序是21,而不是12

Bug分析:

  • 其实这就是一个事件循环

  • 我们执行这个vue文件时,其实就是在执行下面的抽象代码test2

image.png

  • v1,v2对应的就是created,mounted

  • 当我们执行test2时,

  • 先执行v1,

  • 打印v1 s,

  • 遇到await,后面的代码进入微任务队列,

  • 执行v2,打印v2,

  • 执行微任务,打印v1 e

Bug总结:

  • 再仔细看看事件循环