devtools.panels.ExtensionPanel

An ExtensionPanel 表示一個新增到開發者工具的面板。它是 Promise 的解析結果,該 Promise 由 browser.devtools.panels.create() 返回。

型別

此型別的值是物件。它們定義了兩個事件:onShownonHidden

  • 當面板在開發者工具中顯示時(例如,因為使用者點選了開發者工具視窗中的面板選項卡),會觸發 onShown 事件。
  • 當面板被隱藏時(例如,因為使用者切換到開發者工具視窗中的另一個選項卡),會觸發 onHidden 事件。

示例

此程式碼建立一個新面板,然後為其 onShownonHidden 事件新增處理程式。

js
function handleShown(e) {
  console.log(e);
  console.log("panel is being shown");
}

function handleHidden(e) {
  console.log(e);
  console.log("panel is being hidden");
}

browser.devtools.panels
  .create(
    "My Panel", // title
    "icons/star.png", // icon
    "devtools/panel/panel.html", // content
  )
  .then((newPanel) => {
    newPanel.onShown.addListener(handleShown);
    newPanel.onHidden.addListener(handleHidden);
  });

瀏覽器相容性

注意:此 API 基於 Chromium 的 chrome.devtools.panels API。