sessions.setTabValue()
Stocke une paire clé / valeur à associer à un onglet donné. Vous pouvez ensuite récupérer cette valeur en utilisant sessions.getTabValue
.
Notez que ces données ne seront visibles que par l'extension qui l'a définie, et non par les autres extensions.
C'est une fonction asynchrone qui renvoie une Promise
.
Syntaxe
var storing = browser.sessions.setTabValue(
tabId, // integer
key, // string
value, // string or object
);
Paramètres
tabId
-
integer
. ID de l'onglet avec lequel vous souhaitez associer les données. key
-
string
. Clé que vous pouvez utiliser ultérieurement pour récupérer cette valeur de données particulière. value
-
string
ouobject
. S'il s'agit d'un objet, il est stringified, donc les méthodes d'objet, par exemple, seront omises. Si une fonction est donnée ici, elle sera stockée sous la formenull
.
Valeur retournée
Une Promise
qui sera résolue sans argument si l'appel a réussi. Si l'appel a échoué (par exemple, parce que l'ID de l'onglet n'a pas pu être trouvé), la promesse sera rejetée avec un message d'erreur.
Compatibilité des navigateurs
BCD tables only load in the browser
Exemples
Définissez une valeur sur l'onglet actif lorsque l'utilisateur sélectionne un élément de menu. Notez que vous aurez besoin de la permission "menus" pour exécuter cet exemple :
async function setOnActiveTab() {
let tabArray = await browser.tabs.query({
currentWindow: true,
active: true,
});
let tabId = tabArray[0].id;
await browser.sessions.setTabValue(tabId, "my-key", "my-value");
}
browser.menus.create({
id: "my-item",
title: "my item",
contexts: ["all"],
});
browser.menus.onClicked.addListener(setOnActiveTab);