menus.refresh()

Actualise un menu affiché.

Met √† jour les √©l√©ments de menu de l'extension dans le menu affich√© par le navigateur, y compris les modifications effectu√©es depuis l'affichage du menu. N'a aucun effet si le menu n'est pas affich√©. La reconstruction d'un menu affich√© est une op√©ration co√Ľteuse. N'utilisez cette m√©thode que lorsque cela est n√©cessaire.

Cela est généralement appelé depuis l'intérieur d'un gestionnaire d'événements menus.onShown après que le gestionnaire a effectué des mises à jour dans le menu.

Firefox rend cette fonction disponible via l'espace de noms contextMenus ainsi que l'espace de noms des menus.

C'est une fonction asynchrone qui renvoie une Promise.

Syntaxe

browser.menus.refresh()

Paramètres

Aucun.

Valeur retournée

Une Promise qui se réalise sans arguments.

Compatibilité du navigateur

BCD tables only load in the browser

Exemples

Cet exemple permet d'afficher le menu contextuel sur un lien, puis met √† jour l'√©l√©ment de menu openLabelledId menu item avec le nom d'h√īte du lien :

function updateMenuItem(linkHostname) {
  browser.menus.update(openLabelledId, {
    title: `Open (${linkHostname})`
  });
  browser.menus.refresh();
}

browser.menus.onShown.addListener(info => {
  if (!info.linkUrl) {
    return;
  }
  let linkElement = document.createElement("a");
  linkElement.href = info.linkUrl;
  updateMenuItem(linkElement.hostname);
});

Example extensions