Я хотел бы отправлять сообщения каждую секунду с главной страницы во встроенный stackBlitz без перезагрузки главной страницы. Я нашел способ, отправив его, создав файл json, как показано ниже. Я использую Angular.
sdk.embedGithubProject(
'stackblitz-frame',
userName + '//' + repoName,
{ height: 500, width: 1500 }
)
.then(vm => {
const source = interval(1000);
const subscribe = source.subscribe(val => {
var message = new Message();
message.timeInfo = this.Currenttime;
this.vm2 = vm;
vm.applyFsDiff({
create: {
'src/assets/input.json': JSON.stringify({ message})
},
destroy: ['randomFile.ts']
});
});
});
В приведенном выше примере я посылаю videoInfo каждую секунду. Проблема в том, что когда он запускается, он не позволяет мне редактировать остальную часть проекта stackblitz. Я заметил, что в StackBlitz есть возможность связываться через postMessage между iframes, но при попытке использовать это частная переменная.
vm.rdc.port.postMessage
, что я считаю, что это работает так: 1009 *
Но это установлено как частное свойство, проблема создания файла для связи заключается в том, что представление приложения постоянно перезагружается . В качестве примера дочернего элемента я встроил stackblitz: https://stackblitz.com/edit/adding-links-app. Режим просмотра этого контейнера виртуальной машины не позволяет мне создавать режим просмотра и редактировать, когда ввод. json обновляется.
Знаете ли вы какой-либо другой способ связи между встроенным StackBlitz и родительской страницей, где он находится?
Спасибо