#google-chrome-extension
#google-chrome-расширение
Вопрос:
Расширение chrome mainfiest v3 servece_worker просматривает адреса в списке, когда вкладка обновляется, файл вводится, выполняет логику, отправляет сообщение ходоку, новый адрес иногда является новой инъекцией, когда вкладка успешно обновляется новым адресом, два полных сообщения принимаются и вводятся дважды, что нарушает логику встроенного скрипта
var hrefm="адрес" async function secondStart () { let wcall=false; let delCount=0; const tab = await chrome.tabs.update({url: hrefm}); const tabId = tab.id; console.log(tabId,wcall); if(tab.status!="complete"amp;amp;!wcall) await onTabUrlUpdated1(tabId); wcall=true; console.log(delCount,wcall); delCount ; const results = await chrome.scripting.executeScript({ target: {tabId}, files: ['js/myyinject.js'] }, () =gt; { console.log("myyinject"); }); } function onTabUrlUpdated1(tabId) { return new Promise((resolve, reject) =gt; { const onUpdated1 = (id, info) =gt; { console.log(info.status); id === tabId amp;amp; info.url amp;amp; done(true) }; const onRemoved1 = id =gt; id === tabId amp;amp; done(false); chrome.tabs.onUpdated.addListener(onUpdated1); chrome.tabs.onRemoved.addListener(onRemoved1); function done(ok) { chrome.tabs.onUpdated.removeListener(onUpdated1); chrome.tabs.onRemoved.removeListener(onRemoved1); (ok ? resolve : reject)(); } }); }
Я попытался ввести wcall, чтобы проверить, что это второй ответ, оба раза wcall один и тот же, счетчик не считается, Пожалуйста, скажите мне, как исправить, чтобы был один звонок