--- title: sessions.setWindowValue() slug: Mozilla/Add-ons/WebExtensions/API/sessions/setWindowValue tags: - API - Add-ons - Extensions - Method - Reference - WebExtensions - sessions - setWindowsValue translation_of: Mozilla/Add-ons/WebExtensions/API/sessions/setWindowValue ---
Stocke une paire clé / valeur à associer à une fenêtre donnée. Vous pouvez ensuite récupérer cette valeur en utilisant {{WebExtAPIRef("sessions.getWindowValue")}}.
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
.
var storing = browser.sessions.setWindowValue( windowId, // integer key, // string value // string or object )
windowId
integer
. ID de la fenêtre avec laquelle 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
ou object
. 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 valeur null
.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 la fenêtre n'a pas pu être trouvé), la promesse sera rejetée avec un message d'erreur.
{{Compat("webextensions.api.sessions.setWindowValue", 10)}}
Définissez une valeur sur la fenêtre active 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 setOnActiveWindow() { let currentWindow = await browser.windows.getLastFocused(); await browser.sessions.setWindowValue(currentWindow.id, "my-key", "my-value"); } browser.menus.create({ id: "my-item", title: "my item", contexts: ["all"] }); browser.menus.onClicked.addListener(setOnActiveWindow);
{{WebExtExamples}}