background.js
607 Bytes
window.backgroundState = {
sessionStorage: {},
};
chrome.runtime.onMessage.addListener(async (message) => {
if (message.type === "sessionStorage") {
window.backgroundState.sessionStorage = message.value;
} else {
const tabsId = await getCurrentTabId();
if (chrome.tabs && tabsId) {
chrome.tabs.sendMessage(tabsId, message);
}
}
});
/*** 获取当前 tab ID*/
function getCurrentTabId() {
return new Promise((resolve, reject) => {
chrome.tabs.query({ active: true, currentWindow: true }, function (tabs) {
resolve(tabs.length ? tabs[0].id : null);
});
});
}