Class: Playwright::Dialog
- Inherits:
-
PlaywrightApi
- Object
- PlaywrightApi
- Playwright::Dialog
- Defined in:
- lib/playwright_api/dialog.rb
Overview
‘Dialog` objects are dispatched by page via the [`event: Page.dialog`] event.
An example of using ‘Dialog` class:
“‘js const { chromium } = require(’playwright’); // Or ‘firefox’ or ‘webkit’.
(async () => {
const browser = await chromium.launch();
const page = await browser.newPage();
page.on('dialog', async dialog => {
console.log(dialog.message());
await dialog.dismiss();
await browser.close();
});
page.evaluate(() => alert('1'));
})(); “‘
“‘python async import asyncio from playwright.async_api import async_playwright
async def handle_dialog(dialog):
print(dialog.)
await dialog.dismiss()
async def run(playwright):
chromium = playwright.chromium
browser = await chromium.launch()
page = await browser.new_page()
page.on("dialog", handle_dialog)
page.evaluate("alert('1')")
await browser.close()
async def main():
async with async_playwright() as playwright:
await run(playwright)
asyncio.run(main()) “‘
“‘python sync from playwright.sync_api import sync_playwright
def handle_dialog(dialog):
print(dialog.)
dialog.dismiss()
def run(playwright):
chromium = playwright.chromium
browser = chromium.launch()
page = browser.new_page()
page.on("dialog", handle_dialog)
page.evaluate("alert('1')")
browser.close()
with sync_playwright() as playwright:
run(playwright)
“‘
> NOTE: Dialogs are dismissed automatically, unless there is a [‘event: Page.dialog`] listener. When listener is present, it must either [`method: Dialog.accept`] or [`method: Dialog.dismiss`] the dialog - otherwise the page will [freeze](developer.mozilla.org/en-US/docs/Web/JavaScript/EventLoop#never_blocking) waiting for the dialog, and actions like click will never finish.
Instance Method Summary collapse
-
#accept(promptText: nil) ⇒ Object
Returns when the dialog has been accepted.
- #accept_async(promptText: nil) ⇒ Object
-
#default_value ⇒ Object
If dialog is prompt, returns default prompt value.
-
#dismiss ⇒ Object
Returns when the dialog has been dismissed.
-
#message ⇒ Object
A message displayed in the dialog.
-
#off(event, callback) ⇒ Object
– inherited from EventEmitter –.
-
#on(event, callback) ⇒ Object
– inherited from EventEmitter –.
-
#once(event, callback) ⇒ Object
– inherited from EventEmitter –.
-
#type ⇒ Object
Returns dialog’s type, can be one of ‘alert`, `beforeunload`, `confirm` or `prompt`.
Methods inherited from PlaywrightApi
Constructor Details
This class inherits a constructor from Playwright::PlaywrightApi
Instance Method Details
#accept(promptText: nil) ⇒ Object
Returns when the dialog has been accepted.
70 71 72 |
# File 'lib/playwright_api/dialog.rb', line 70 def accept(promptText: nil) wrap_impl(@impl.accept(promptText: unwrap_impl(promptText))) end |
#accept_async(promptText: nil) ⇒ Object
95 96 97 |
# File 'lib/playwright_api/dialog.rb', line 95 def accept_async(promptText: nil) wrap_impl(@impl.accept_async(promptText: unwrap_impl(promptText))) end |
#default_value ⇒ Object
If dialog is prompt, returns default prompt value. Otherwise, returns empty string.
75 76 77 |
# File 'lib/playwright_api/dialog.rb', line 75 def default_value wrap_impl(@impl.default_value) end |
#dismiss ⇒ Object
Returns when the dialog has been dismissed.
80 81 82 |
# File 'lib/playwright_api/dialog.rb', line 80 def dismiss wrap_impl(@impl.dismiss) end |
#message ⇒ Object
A message displayed in the dialog.
85 86 87 |
# File 'lib/playwright_api/dialog.rb', line 85 def wrap_impl(@impl.) end |
#off(event, callback) ⇒ Object
– inherited from EventEmitter –
101 102 103 |
# File 'lib/playwright_api/dialog.rb', line 101 def off(event, callback) event_emitter_proxy.off(event, callback) end |
#on(event, callback) ⇒ Object
– inherited from EventEmitter –
113 114 115 |
# File 'lib/playwright_api/dialog.rb', line 113 def on(event, callback) event_emitter_proxy.on(event, callback) end |
#once(event, callback) ⇒ Object
– inherited from EventEmitter –
107 108 109 |
# File 'lib/playwright_api/dialog.rb', line 107 def once(event, callback) event_emitter_proxy.once(event, callback) end |
#type ⇒ Object
Returns dialog’s type, can be one of ‘alert`, `beforeunload`, `confirm` or `prompt`.
90 91 92 |
# File 'lib/playwright_api/dialog.rb', line 90 def type wrap_impl(@impl.type) end |