puppeteer/website/versioned_docs/version-22.6.5/api/puppeteer.locator.md
release-please[bot] e0932e5cce
chore: release main (#12274)
🤖 I have created a release *beep* *boop*
---


<details><summary>browsers: 2.2.2</summary>

##
[2.2.2](https://github.com/puppeteer/puppeteer/compare/browsers-v2.2.1...browsers-v2.2.2)
(2024-04-15)


### Bug Fixes

* remove NetworkServiceInProcess2 set by default
([#12261](https://github.com/puppeteer/puppeteer/issues/12261))
([ff4f70f](ff4f70f4ae)),
closes [#12257](https://github.com/puppeteer/puppeteer/issues/12257)
</details>

<details><summary>puppeteer: 22.6.5</summary>

##
[22.6.5](https://github.com/puppeteer/puppeteer/compare/puppeteer-v22.6.4...puppeteer-v22.6.5)
(2024-04-15)


### Miscellaneous Chores

* **puppeteer:** Synchronize puppeteer versions


### Dependencies

* The following workspace dependencies were updated
  * dependencies
    * puppeteer-core bumped from 22.6.4 to 22.6.5
    * @puppeteer/browsers bumped from 2.2.1 to 2.2.2
</details>

<details><summary>puppeteer-core: 22.6.5</summary>

##
[22.6.5](https://github.com/puppeteer/puppeteer/compare/puppeteer-core-v22.6.4...puppeteer-core-v22.6.5)
(2024-04-15)


### Bug Fixes

* remove NetworkServiceInProcess2 set by default
([#12261](https://github.com/puppeteer/puppeteer/issues/12261))
([ff4f70f](ff4f70f4ae)),
closes [#12257](https://github.com/puppeteer/puppeteer/issues/12257)
* use setImmediate to reduce flakiness when processing events
([#12264](https://github.com/puppeteer/puppeteer/issues/12264))
([73403b3](73403b323e))


### Dependencies

* The following workspace dependencies were updated
  * dependencies
    * @puppeteer/browsers bumped from 2.2.1 to 2.2.2
</details>

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com>
2024-04-15 07:06:55 +00:00

3.7 KiB

sidebar_label
Locator

Locator class

Locators describe a strategy of locating objects and performing an action on them. If the action fails because the object is not ready for the action, the whole operation is retried. Various preconditions for a successful action are checked automatically.

Signature:

export declare abstract class Locator<T> extends EventEmitter<LocatorEvents>

Extends: EventEmitter<LocatorEvents>

Properties

Property

Modifiers

Type

Description

_

optional

T

Used for nominally typing Locator.

timeout

readonly

number

Methods

Method

Modifiers

Description

click(this, options)

clone()

Clones the locator.

fill(this, value, options)

Fills out the input identified by the locator using the provided value. The type of the input is determined at runtime and the appropriate fill-out method is chosen based on the type. contenteditable, selector, inputs are supported.

filter(predicate)

Creates an expectation that is evaluated against located values.

If the expectations do not match, then the locator will retry.

hover(this, options)

map(mapper)

Maps the locator using the provided mapper.

race(locators)

static

Creates a race between multiple locators but ensures that only a single one acts.

scroll(this, options)

setEnsureElementIsInTheViewport(this, value)

setTimeout(timeout)

setVisibility(this, visibility)

setWaitForEnabled(this, value)

setWaitForStableBoundingBox(this, value)

wait(options)

Waits for the locator to get the serialized value from the page.

Note this requires the value to be JSON-serializable.

waitHandle(options)

Waits for the locator to get a handle from the page.