【问题标题】:how to pass a variable to puppeteer page.$eval();如何将变量传递给 puppeteer page.$eval();
【发布时间】:2020-01-24 16:02:10
【问题描述】:

我声明了一个变量,我试图将它传递给eval,但它没有显示出来。如何正确传递变量。

var now = moment().format('YYYY-MM-D');
await page.$eval('#middleContent_txtEndDate', el => el.value = now);

如果我在 eval 函数中声明一个变量,它就可以工作:

var now = moment().format('YYYY-MM-D');
await page.$eval('#middleContent_txtEndDate', el => el.value = "it works");

【问题讨论】:

    标签: node.js puppeteer


    【解决方案1】:

    您可以将aditional arguments 传递给$eval

    const now = moment().format('YYYY-MM-D');
    
    await page.$eval('#middleContent_txtEndDate', (el, now, foo) => {
       console.log(el, now, foo);
       return el.value = now;
    }, now, 'foo');
    

    【讨论】:

    • 上帝保佑你
    • 我忘了做 2s 的 timout,它工作 await page.$eval('#USERNAME', (el, user) => el.value = user, USER);
    猜你喜欢
    • 1970-01-01
    • 2020-07-14
    • 1970-01-01
    • 1970-01-01
    • 2018-11-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多