Skip to content

Latest commit

 

History

History
38 lines (23 loc) · 1.31 KB

puppeteer.elementhandle._eval.md

File metadata and controls

38 lines (23 loc) · 1.31 KB

Home > puppeteer > ElementHandle > $eval

ElementHandle.$eval() method

This method runs document.querySelector within the element and passes it as the first argument to pageFunction. If there's no element matching selector, the method throws an error.

If pageFunction returns a Promise, then frame.$eval would wait for the promise to resolve and return its value.

Signature:

$eval<ReturnType extends any>(selector: string, pageFunction: EvaluateFn | string, ...args: SerializableOrJSHandle[]): Promise<ReturnType>;

Parameters

Parameter Type Description
selector string
pageFunction EvaluateFn | string
args SerializableOrJSHandle[]

Returns:

Promise<ReturnType>

Example

const tweetHandle = await page.$('.tweet');
expect(await tweetHandle.$eval('.like', node => node.innerText)).toBe('100');
expect(await tweetHandle.$eval('.retweets', node => node.innerText)).toBe('10');