Pageres(phantomjs)没有回报承诺

时间:2018-01-30 11:22:06

标签: javascript node.js promise phantomjs

我正在使用Pageres从多个网站生成屏幕截图。

有一个来源,一切正常!

示例代码:

return new Pageres({})
   .src(url, sizes) // <- one URL
   .dest(dest)
   .run()

   .then((result) => {
      console.log("done");
      return result;
   })
   .catch((error) => {
       throw error;
   });

但是如果我想使用多个源代码并遍历我的数组,它会返回一个Pageres对象而不是Promise。

我的代码如下:

let pages = new Pageres({});

urls.forEach((url)=>{
    pages.src(url, size)
});
pages
    .dest(dest)
    .run()
    .then((result) => {
        console.log("done");
        return result
    })
    .catch((error) => {
        console.log("error", error);
        throw error;
    });
return pages;

有人知道为什么第一个例子有效,第二个例子没有? 在第二个例子中,我该怎么做才能返回一个Promise?

提前致谢!

1 个答案:

答案 0 :(得分:2)

我认为你可以使用reduce

my_gui.greet()