回调中异步函数内的变量

时间:2020-03-02 17:57:43

标签: javascript node.js

我有以下代码:

    var count = 0;
    for (const post of posts)
    {
        if (count == 4)
            break
        count++;
        var request = require('request');
        var path = 'image' + count + '.jpg';
        gm(request(post.image_versions2.candidates[1].url))
        .flop()
        .write(path, function (err) {
          if (!err) {
            if (fs.existsSync(path)) {
                console.log('finished modifying image , preparing to upload photo');
                uploadPicture(ig, "", path);
            }
          } else {
            console.log(err);
          }
        })

    }

现在的问题是fs.existsSync(path)中的路径始终位于image4.jpg ..我的猜测是,在执行回调时,for循环已经结束,因此它始终指向image4.jpg < / p>

如何获取传递给参数的变量的适当路径变量?

0 个答案:

没有答案