Korzystanie z funkcji przesyłania wiadomości między ramkami

Na tej stronie opisujemy, jak wysyłać wiadomości po stronie klienta z dodatku działającego w elemencie iframe panelu bocznego do dodatku działającego w elemencie iframe głównego obszaru. Wymiana wiadomości między klatkami odbywa się tylko po stronie klienta, więc dostarczanie wiadomości jest niemal natychmiastowe.

Aby wysłać wiadomość:

    await sidePanelClient.notifyMainStage("YOUR_MESSAGE");
  • Aby przenieść element z głównego widoku do panelu bocznego, użyj metody notifySidePanel().
    await mainStageClient.notifySidePanel("YOUR_MESSAGE");

Długość payload musi być zgodna z określonym limitem rozmiaru.

Aby otrzymać wiadomość, dodatek musi zasubskrybować wywołanie zwrotne frameToFrameMessage. Poniższy przykładowy kod pokazuje, jak zasubskrybować wywołanie zwrotne frameToFrameMessage:

sidePanelClient.on('frameToFrameMessage', (arg: FrameToFrameMessage) => {
    // YOUR_CODE
});

Przykładowy dodatek „Animation” w GitHubie zawiera pełny przykład przesyłania wiadomości między ramkami. Po rozpoczęciu aktywności panel boczny powiadamia główną scenę o każdej zmianie danych wejściowych przez użytkownika. Główna scena subskrybuje też frameToFrameMessagewywołanie zwrotne, aby otrzymywać zaktualizowany stan.

Uwagi

  • Wiadomości wysyłane przez danego uczestnika w ramach jednej klatki są widoczne tylko dla tego uczestnika. Aby wysyłać wiadomości lub stan do innych uczestników, dowiedz się, jak udostępniać stan dodatku.

  • Próba dostarczenia wiadomości jest podejmowana tylko raz. Aby otrzymywać wiadomości, panel odbiorczy musi być otwarty, a aplikacja musi subskrybować wywołanie zwrotne przed wysłaniem wiadomości.