我基本上有这个for循环,它运行一个函数,打开一个木偶机窗口并转到一个链接,但是,我希望这是按顺序完成的,因为现在所有的木偶机窗口都同时打开。
这是一个循环:
for(var i=0; i < 3; i++){
if (i != 0){
enter();
}
}
这是我的函数输入:
async function enter(){
browser = await puppeteer.launch({headless: false});
page = await browser.newPage();
await page.goto(url);
}
现在,如果我要运行代码2木偶机窗口将打开,但我希望1打开,转到链接,然后打开下一个并转到链接,依此类推…
感谢提供的任何帮助
您没有等待enter
调用,这就是它没有等待的原因。你需要等待。
for(var i=0; i < 3; i++){
if (i != 0){
await enter();
}
}
您需要将循环包装成异步函数,并在每次调用enter()
时使用await
:
async function openWindows() {
for(var i=0; i < 3; i++){
if (i != 0){
await enter();
}
}
}