я постараюсь объяснить мою проблему. Я получил свой собственный продукт, написанный на React, который предоставляется пакетом, доступным из файла index.html (простой и простой вывод React).
Мне нужно сделать так, чтобы этот проект работал на сайте, реализованном с использованием Angular.
Это то, что мне нужно сделать:
1) Istantiateиндекс проекта React (я попытался с помощью Iframe установить атрибут src) 2) вызвать метод, предоставляемый проектом React (обычно вызывается следующим образом: MainClass.show ("XML")), этот метод используется для анализаXML строка и показать что-то на экране.
Вот что я попробовал:
1) Включите index.html в iframe:
@ViewChild('iframe', null) iframe: ElementRef;
constructor(
private hostElement: ElementRef,
) { }
ngOnInit() {
const iframe = this.hostElement.nativeElement.querySelector('iframe');
iframe.src = "http://someip/index.html";
}
Это работает. Если я открываю консоль Chrome, я могу выбрать фрейм и ввести свой метод, XML-файл анализируется, и я получаю именно то шоу, которое ожидаю, внутри Iframe. Отлично работает. Что мне нужно сделать, это вызвать этот метод из кода (например, после нажатия кнопки).
Я попытался использовать что-то вроде этого:
<HTMLIFrameElement>iframe).contentWindow.MainClass.show("XML")
Но ofc MainClass не определен.
Я действительно потерян в этот момент.
Есть идеи? Предложение?
Заранее спасибо.