Skip to content

Latest commit

 

History

History
38 lines (22 loc) · 1.41 KB

puppeteer.frame.__eval.md

File metadata and controls

38 lines (22 loc) · 1.41 KB

Home > puppeteer > Frame > $$eval

Frame.$$eval() method

Signature:

$$eval<ReturnType>(selector: string, pageFunction: (elements: Element[], ...args: unknown[]) => ReturnType | Promise<ReturnType>, ...args: SerializableOrJSHandle[]): Promise<WrapElementHandle<ReturnType>>;

Parameters

Parameter Type Description
selector string the selector to query for
pageFunction (elements: Element[], ...args: unknown[]) => ReturnType | Promise<ReturnType> the function to be evaluated in the frame's context
args SerializableOrJSHandle[] additional arguments to pass to pageFuncton

Returns:

Promise<WrapElementHandle<ReturnType>>

Remarks

This method runs Array.from(document.querySelectorAll(selector)) within the frame and passes it as the first argument to pageFunction.

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

Example

const divsCounts = await frame.$$eval('div', divs => divs.length);