【发布时间】:2021-02-05 05:15:52
【问题描述】:
我需要等待滚动操作完成,然后解决。
当我将 resolve() 放入 page.evaluate() 块时,它会抛出: (node:22646) UnhandledPromiseRejectionWarning: Error: Evaluation failed: ReferenceError: resolve is not defined
如果我保持这样它会立即解决。
let scrollingPromise = new Promise((resolve, reject) => {
page.evaluate(() => {
const scrollingWindow = document.querySelector('.section-layout.section-scrollbox.scrollable-y.scrollable-show');
for (let i = 0; i < 4; i++) {
setTimeout(function () {
scrollingWindow.scrollBy(0, 3000);
}, 2000 * i);
}
});
resolve();
});
【问题讨论】:
-
pptr.dev/… — 项目符号列表后面的第一段可能会有用。
标签: javascript node.js asynchronous puppeteer es6-promise