функционалом.
Есть некая библиотека, она представляет собой что-то вроде google analytics или же какого-нибудь facebook sdk и распространяется посредством вставки script src в head или же в конец body (без разницы)
Ну т.е. <script src="https://some-cdn-path.js"></script>
Как и google-analytics ей необходимо передать некий уникальный ID клиента.
Непосредственно в приложении она будет использоваться как web component, т.е. где-то в компоненте react она будет вызвана как <my-awesome-applet></my-awesome-applet>.
Данный web-component в зависимости от уникального ID клиента будет рендерить заложенный функционал.
Функционал, который может понадобиться разработчику, использующему данную applet:
0) Как подключать? Просто тупо вставкой в index.html тэга script?
1) Точно знать, что библиотека уже загружена и готова к использованию (исполняемый файл уже завершил загрузку и инициализацию)
2) Слушать события, которые произошли в applet. Например: submitted, page-changed и т.п.
Здесь я не уверен в том, что знаю как именно в удобном виде предоставить react разработчикам API для взаимодействия так сказать...
Для пункта 2 - просто оставить возможность слушать нативные dom events или можно приколхозить мб какую-нибудь обертку с хуками? (не уверен что это уместно)
есть библиотека the-platform, у нее есть компонент Script есть и другие похожие
Лучшее, что ты можешь сделать — правильно оформить эту балалайку как npm package. Я бы оставил нативный API без привязки к реакту — разработчики сами справятся с подключением. А вот дистрибуция в виде es module через npm — это важно
Обсуждают сегодня