CondoWebAppUpdateModalWindow

Данный метод позволяет обновить модальное окно, открытое ранее с помощью метода CondoWebAppShowModalWindow.

Платформы

  • B2B-Web

Параметры метода

Имя параметраТип параметраОбязательныйОписание параметра
modalIdstringдаID модального окна, которое необходимо обновить
dataJSONдаJSON, содержащий изменяемые параметры и их новые значения. Изменить можно любые параметры окна, описанные в методе CondoWebAppShowModalWindow, кроме ссылки на внутренний iframe (Для этого можно просто перенаправить пользователя внутри уже открытого iframe).

Возвращаемое значение

При успешном выполнении метод вернет назад JSON-объект, содержащий единственное поле updated:
json
{ "updated": true }

Пример использования

Ниже приведен пример обновления модального окна из основной страницы мини-приложения и из iframe модального окна:
typescript
// pages/index.tsx import React, { useCallback, useState, useEffect } from 'react' import bridge from '@open-condo/bridge' import { Button } from '@open-condo/ui' export default function MiniappPage (): React.ReactNode { const [openModalId, setOpenModalId] = useState<string | null>(null) const openModal = useCallback(() => { bridge.send('CondoWebAppShowModalWindow', { url: 'http://localhost:3001/modal', size: 'small', title: 'Loading...', }).then((data) => { setOpenModalId(data.modalId) }) }, []) useEffect(() => { if (openModalId) { setTimeout(() => { bridge.send('CondoWebAppUpdateModalWindow', { modalId: openModalId, data: { size: 'big', title: 'Welcome' } }) }, 1000) } }, [openModalId]) return ( <Button type='primary' onClick={openModal}>Open modal window</Button> ) }