sessions.getTabValue()
檢索先前透過呼叫 sessions.setTabValue 儲存的值。
即使在標籤頁關閉/恢復週期中,您也可以檢索標籤頁中的值:也就是說,如果您設定了一個值,然後使用者關閉了該標籤頁,然後使用瀏覽器的“恢復標籤頁”功能(例如,透過按 Control+Shift+T)恢復了該標籤頁,那麼您將能夠從恢復的標籤頁中檢索該值。但請注意,恢復的標籤頁的 ID 與原始標籤頁不同,因此您傳遞給 getTabValue() 的 ID 將與您傳遞給 setTabValue() 的 ID 不同,即使它們都指向同一個標籤頁。
這是一個非同步函式,返回一個 Promise。
語法
js
let retrieving = browser.sessions.getTabValue(
tabId, // integer
key // string
)
引數
tabId-
integer。您嘗試檢索資料的標籤頁的 ID。如果 ID 無效,將丟擲錯誤。 key-
string。用於標識要檢索的特定值的鍵。這需要與之前在sessions.setTabValue中提供的鍵匹配。
返回值
一個 Promise,如果值存在,它將解析為該值;如果不存在,則解析為 undefined。如果呼叫失敗(例如,因為找不到標籤頁 ID),則 Promise 將被拒絕並顯示錯誤訊息。
示例
記錄所有新建立標籤頁(包括已恢復的標籤頁)的“my-key”的值。
js
function onGetResolved(r) {
console.log(`success: ${r}`);
}
function onGetRejected(e) {
console.log(`error: ${e}`);
}
browser.tabs.onCreated.addListener((tab) => {
browser.sessions
.getTabValue(tab.id, "my-key")
.then(onGetResolved, onGetRejected);
});
擴充套件程式示例
瀏覽器相容性
載入中…