puppeteer/docs/api/puppeteer.browsercontext.waitfortarget.md

76 lines
1.2 KiB
Markdown
Raw Normal View History

2022-07-05 13:41:43 +00:00
---
sidebar_label: BrowserContext.waitForTarget
---
# BrowserContext.waitForTarget() method
Waits until a [target](./puppeteer.target.md) matching the given `predicate` appears and returns it.
This will look all open [browser contexts](./puppeteer.browsercontext.md).
2022-07-05 13:41:43 +00:00
#### Signature:
2022-07-05 13:41:43 +00:00
```typescript
class BrowserContext {
waitForTarget(
2022-07-05 13:41:43 +00:00
predicate: (x: Target) => boolean | Promise<boolean>,
options?: WaitForTargetOptions
2022-07-05 13:41:43 +00:00
): Promise<Target>;
}
```
## Parameters
<table><thead><tr><th>
2022-07-05 13:41:43 +00:00
Parameter
</th><th>
Type
</th><th>
Description
</th></tr></thead>
<tbody><tr><td>
predicate
</td><td>
(x: [Target](./puppeteer.target.md)) =&gt; boolean \| Promise&lt;boolean&gt;
</td><td>
</td></tr>
<tr><td>
options
</td><td>
[WaitForTargetOptions](./puppeteer.waitfortargetoptions.md)
</td><td>
_(Optional)_
</td></tr>
</tbody></table>
2022-07-05 13:41:43 +00:00
**Returns:**
Promise&lt;[Target](./puppeteer.target.md)&gt;
## Example
Finding a target for a page opened via `window.open`:
2022-07-05 13:41:43 +00:00
```ts
await page.evaluate(() => window.open('https://www.example.com/'));
const newWindowTarget = await browserContext.waitForTarget(
target => target.url() === 'https://www.example.com/'
);
```