38 lines
1.2 KiB
Markdown
38 lines
1.2 KiB
Markdown
---
|
|
sidebar_label: BrowserContext.waitForTarget
|
|
---
|
|
# BrowserContext.waitForTarget() method
|
|
|
|
This searches for a target in this specific browser context.
|
|
|
|
**Signature:**
|
|
|
|
```typescript
|
|
class BrowserContext {waitForTarget(predicate: (x: Target) => boolean | Promise<boolean>, options?: {
|
|
timeout?: number;
|
|
}): Promise<Target>;}
|
|
```
|
|
|
|
## Parameters
|
|
|
|
| Parameter | Type | Description |
|
|
| --- | --- | --- |
|
|
| predicate | (x: [Target](./puppeteer.target.md)) => boolean \| Promise<boolean> | A function to be run for every target |
|
|
| options | { timeout?: number; } | <i>(Optional)</i> An object of options. Accepts a timout, which is the maximum wait time in milliseconds. Pass <code>0</code> to disable the timeout. Defaults to 30 seconds. |
|
|
|
|
**Returns:**
|
|
|
|
Promise<[Target](./puppeteer.target.md)>
|
|
|
|
Promise which resolves to the first target found that matches the `predicate` function.
|
|
|
|
## Example
|
|
|
|
An example of finding a target for a page opened via `window.open`:
|
|
|
|
```ts
|
|
await page.evaluate(() => window.open('https://www.example.com/'));
|
|
const newWindowTarget = await browserContext.waitForTarget(target => target.url() === 'https://www.example.com/');
|
|
```
|
|
|