контейнере и встраиваться на разные страницы в проекте на ларе с блейдом
Приложение должно отображать данные и при изменении состояния должно его возвращать
общением с бэком будет заниматься jquery в месте встраивания приложения, везде будет свой функционал
Есть два варианта встраивания:
1. Как айфрейм
2. Как стандартная приложка, просто вставляется в блок на странице
Как организовать общение этого приложения с наружей (скриптами в месте встраивания)?
На ум приходят только два варианта:
1. Кастомные ивенты
2. Записать сам app куда-нибудь в window и задать ему какие-то методы для доступа к данным, а в месте встраивания их вызывать
Что думаете? Можете что-то посоветовать? Спасибо!
Я за кастомные ивенты )
пользовательские // ловим на document... document.addEventListener("hello", function(event) { // (1) alert("Привет от " + event.target.tagName); // Привет от H1 }); // ...запуск события на элементе! let event = new Event("hello", {bubbles: true}); // (2) elem.dispatchEvent(event);
И зачем тебе Vue, если ты делаешь в стиле jq?
https://www.npmjs.com/package/mitt
в самом приложении куча логики для отображения и взаимодействия с view, это лучше работает на vue, легче поддерживать Но проект старый и имеем то что имеем, для общения с бэком куча логики уже написана на jQ, поэтому она остаётся, надо туда просто данные прокидывать из приложения и триггерить нужные функции фактически микрофронтенд получается
шину событий?
Обсуждают сегодня