chrome.contextMenus.create с динамическими элементами

Я хочу создать расширение Chrome, которое имеет меню с некоторыми пунктами, основанными на том, на что вы нажимаете.

я использую chrome.runtime.onConnectExternal чтобы пройти дату, все работает здесь хорошо. но так как обмен сообщениями между расширением и сайтом выполняется асинхронно, через некоторое время события появляются после того, как отображается меню. и это доза не обновляется после этого. конечный результат заключается в том, что иногда вы видите меню, основанное на старом элементе, который был нажат правой кнопкой мыши.

Есть ли способ обновить меню при открытом. или способ синхронизации между сайтом и расширением?

Вот пример, показывающий, что меню не обновляется:

const test = chrome.contextMenus.create({
    'title': `menu 0`,
    "contexts": ['all'],
});

let index = 0;

setInterval(() => {
    chrome.contextMenus.update(test, {title: 'menu ' + index++})
}, 1000);

0 ответов

Другие вопросы по тегам