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。