首页 > 解决方案 > 需要多次调用异步回调 - 怎么做?

问题描述

我有一个MyEventListener带有这样的方法的类:

  onChange(inputId = 1, handler: (status) => void): void {
    this.subscribeEvent('my event', (data) => {
          handler(data);
        }
      }
    });

我需要用 sinon 来打断它的行为。

所以我像这样使用 yieldAsync :

   const stub = sandbox.stub(MyEventListener.prototype, 'onChange')
   stub.yieldsAsync(anObject)

这适用于第一个事件。

然后我需要另一个事件,然后我再打电话:

   stub.yieldsAsync(anObject)

现在这一次没有触发事件,也没有调用处理程序。

正常吗?知道这有什么问题吗?

标签: javascriptasynchronouscallbacksinon

解决方案


推荐阅读