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());