chrome扩展如何修改弹窗内容?

How to modify the content of popup page in chrome extension?

我正在尝试创建一个简单的 Chrome 扩展程序,它在弹出窗口 window 中有一个按钮,当用户单击该按钮时,该弹出窗口中的一些文本会发生变化。这是我拥有的:

popup.html 文件:

<!DOCTYPE html>
<html>
  <head></head>
  <body>
    <button id="myButton">Button</button>
    <p id="myText">hello</p>
    <script src="popup.js"></script>
  </body>
</html>

popup.js 文件:

let myButton = document.getElementById("myButton");

myButton.addEventListener("click", async () => {
  let [tab] = await chrome.tabs.query({ active: true, currentWindow: true });

  chrome.scripting.executeScript({
    target: {tabId: tab.id},  // This is probably wrong???
    function: doSomething,
  });
});

function doSomething() {
  console.log("button is clicked");
  document.getElementById("myText").innerHtml = "foo bar";
}

我能够在控制台中看到“按钮被点击”,但没有看到弹出窗口的内容从“hello”变为“foo bar”。我怀疑这是因为我在 executeScript 中使用的目标是错误的,但我不确定修复它的正确方法是什么。有什么想法吗?

应该是:

document.getElementById("myText").innerHTML = "foo bar";

而不是:

document.getElementById("myText").innerHtml = "foo bar";