如何确保回叫下面的代码始终在回叫完成后运行

时间:2019-05-01 11:14:47

标签: javascript typescript

设置的间隔一次又一次地运行代码。 console.log("2")console.log("1")之前打印,我要按顺序运行

let repeat = setInterval(() => {
    let index = 0
    let file = { Id: this.g[index].id }
    this.auth.verifyProgress(file).subscribe(
        (res: any) => {
            running = ....;
            if (!running) {
                clearInterval(repeat)
            }
            console.log('1')
        },
        (err) => {
            console.log(err)
        }
    )
    index = index + 1
    if (index >= numberOfFiles) {
        index = 0
    }
    console.log('2')
}, 4000)

我不想将代码放在成功回调的外部,因为无论res还是err,我都希望运行它。我该怎么办。

可以使用promise还是await完成吗?

1 个答案:

答案 0 :(得分:-1)

  

无论res还是err,我都想运行它

将代码放入函数中,在两种情况下都调用该函数。