Skip to content

Класс NBTransport отвечает за межфреймовое общение. По умолчанию работает через window.postMessage, но может быть перенастроен на работу через WebSocket

Глобальный объявление

По умолчанию экземпляр класса NBTransport доступен из глобальной переменной Transport

в браузере ссылка помещается в window._nb_transport

на сервере в global._nb_transport

Его настройки могут быть переданы двумя путями, из глобальной переменной window._nb_global_props (на сервере global._nb_global_props) или из window.name

Пример передачи параметров и родительского фрейма:

html
<body>
    <iframe
        src="/path/to/extension/index.html"
        name='{"engine":"postmessage"}'></iframe>
</body>

Создание нового инстанса

В случаях когда нет возможности настроить глобальный объъект или необходимо работать с несколькими наборами настроек, можно создать свой инстанс класса NBTransport

Пример создания локального инстанса класса:

typescript
import { NBTransport, TransportEvent } from "next-box";

const api = new NBTransport({});

api.on(TransportEvent.AppReload, () => window.location.reload());