Firefox:关闭所有选项卡并*最后激活*

Firefox: Close all tabs and *active last*

async function closeAllTabs(activeTab)
{
    const tabs = await browser.tabs.query({ currentWindow: true, active: false });
    for (const tab of tabs)
        browser.tabs.remove(tab.id);

    browser.tabs.remove(activeTab.id);  // Close the active tab last so that it would be first in the Recently Closed list.
}

browser.browserAction.onClicked.addListener(closeAllTabs);

如何确保活动标签最后关闭? 使用上面的代码,它会间歇性地工作。

使用 await 并一次将所有 ID 作为数组传递:

async function closeAllTabs(activeTab)
{
    const tabs = await browser.tabs.query({ currentWindow: true, active: false });
    await browser.tabs.remove(tabs.map(tab => tab.id));
    await browser.tabs.remove(activeTab.id);
}