Skip to main content

Page.waitForNavigation() method

This resolves when the page navigates to a new URL or reloads. It is useful when you run code that will indirectly cause the page to navigate. Consider this example:

const [response] = await Promise.all([
page.waitForNavigation(), // The promise resolves after navigation has finished
page.click('a.my-link'), // Clicking the link will indirectly cause a navigation
]);

Signature:

waitForNavigation(options?: WaitForOptions): Promise<HTTPResponse | null>;

Parameters

ParameterTypeDescription
optionsWaitForOptions(Optional) Navigation parameters which might have the following properties:

Returns:

Promise<HTTPResponse | null>

Promise which resolves to the main resource response. In case of multiple redirects, the navigation will resolve with the response of the last redirect. In case of navigation to a different anchor or navigation due to History API usage, the navigation will resolve with null.

Remarks

NOTE: Usage of the History API to change the URL is considered a navigation.

Shortcut for page.mainFrame().waitForNavigation(options).