Создать готовое событие для пользовательского плагина в чистом JavaScript - PullRequest
0 голосов
/ 10 апреля 2019

Я создал плагин на чистом JavaScript и хотел создать одно событие, которое сработает, когда мой плагин будет готов.

Чтобы какой-то другой код JavaScript мог подписаться на это событие и действовать после того, как плагин будет готов.

В настоящее время я придерживаюсь простого подхода, описанного ниже.

var pluginLoadEvent = new CustomEvent(
  "plugin-ready",{
    bubbles: true,
    cancelable: true
  }
);

И отправьте это событие, как только плагин будет готов:

document.dispatchEvent(pluginLoadEvent);

Событие подписано нанапример:

document.addEventListener('plugin-ready',window.function_after_plugin_ready);

Проблема заключается в том, что мое CustomEvent создается и отправляется в файле, отличном от подписок, что вызывает проблемы состояния гонки, когда событие отправляется до подписок.

Как я могу гарантировать, что подписки произойдут до отправки?

...