nodejs: Evaluation failed: ReferenceError: variable is not defined
nodejs: Evaluation failed: ReferenceError: variable is not defined
Whosebug 上也有类似的问题,但 none 帮助我解决了这个问题。我的代码有什么问题?为什么它以 UnhandledPromiseRejectionWarning: Error: Evaluation failed: ReferenceError: target_time is not defined
退出。我应该在哪里声明变量,使其成为全局变量?
这是代码
const puppeteer = require('puppeteer');
// const target_time = 1640955540;
async function getexample(){
const target_time = 1640955540;
const browser = await puppeteer.launch({headless: false});
const page = await browser.newPage();
const url = "https://example.com";
await page.goto(url);
await page.waitForSelector("h1");
const date_change = await page.$eval("h1", e =>
e.innerHTML = target_time // This is where the exception occurs
);
console.log(date_change);
console.log(target_time)
await browser.close();
};
getexample();
找到答案。我必须将我的变量传递给 $eval 函数。最后我的代码变成了。
const puppeteer = require('puppeteer');
// const target_time = 1640955540;
async function getexample(){
const target_time = 1640955540;
const browser = await puppeteer.launch({headless: false});
const page = await browser.newPage();
const url = "https://example.com";
await page.goto(url);
await page.waitForSelector("h1");
await page.$eval("h1", (e,t) =>
e.innerHTML = target_time // This is where the exception used to occur
,target_time); // I had to remove the return `date_change` because it returned undefined.
//console.log(date_change);
console.log(target_time)
await browser.close();
};
getexample();
Whosebug 上也有类似的问题,但 none 帮助我解决了这个问题。我的代码有什么问题?为什么它以 UnhandledPromiseRejectionWarning: Error: Evaluation failed: ReferenceError: target_time is not defined
退出。我应该在哪里声明变量,使其成为全局变量?
这是代码
const puppeteer = require('puppeteer');
// const target_time = 1640955540;
async function getexample(){
const target_time = 1640955540;
const browser = await puppeteer.launch({headless: false});
const page = await browser.newPage();
const url = "https://example.com";
await page.goto(url);
await page.waitForSelector("h1");
const date_change = await page.$eval("h1", e =>
e.innerHTML = target_time // This is where the exception occurs
);
console.log(date_change);
console.log(target_time)
await browser.close();
};
getexample();
找到答案
const puppeteer = require('puppeteer');
// const target_time = 1640955540;
async function getexample(){
const target_time = 1640955540;
const browser = await puppeteer.launch({headless: false});
const page = await browser.newPage();
const url = "https://example.com";
await page.goto(url);
await page.waitForSelector("h1");
await page.$eval("h1", (e,t) =>
e.innerHTML = target_time // This is where the exception used to occur
,target_time); // I had to remove the return `date_change` because it returned undefined.
//console.log(date_change);
console.log(target_time)
await browser.close();
};
getexample();