Пожар после Обещания - PullRequest
2 голосов
/ 15 июня 2019

У меня есть проект, который работает как веб-прокси. Используйте его для внесения изменений в другие сайты. (Эта часть важна, я могу только ввести код JavaScript, но я не могу изменить код самого сайта.)

Я пытаюсь изменить сайт, созданный в React, и не могу этого сделать. Сайт принимает контент через API и обещания. Итак, у меня проблема:

Если я использую:

window.addEventListener('DOMContentLoaded', function () {

  document.getElementsByClassName ('content-class')[0].innerHTML="New Content";
});

Контент еще не существует и не работает

Если я использую:

window.onload = function() {
 document.getElementsByClassName ('content-class')[0].innerHTML="New Content";
}

Работает, через некоторое время появился контент.

Я пытался

var content = document.getElementsByClassName('content-class')[0];

content.addEventListener ('load', function() {

    document.getElementsByClassName('content-class')[0].innerHTML="New Content";

});

Неудачно тоже

Как я мог решить это? Есть ли способ вызвать событие после того, как все обещания будут выполнены?

Или определить, что элемент был создан обещанием, и вызвать событие.

1 Ответ

0 голосов
/ 16 июня 2019

Насколько я знаю, в приложении React нет способа отследить обещания

Однако в современных браузерах есть наблюдатель мутаций api developer.mozilla.org / en-US /docs / Web / API / MutationObserver , который используется для обнаружения изменений, которые приложение реагирует на DOM

...