0

我已经从我的内容脚本发送了一个请求,并成功地从我的后台页面收到了响应。现在我想在我的内容脚本中设置一个变量 - 基于响应。这就是我遇到麻烦的地方。应该很简单......我想我一定是语法错误。这是我的内容脚本中的内容:

chrome.extension.sendRequest({greeting: "hello"}, function(response) {
  console.log(response.farewell);
if (response.farewell == "goodbye") {
      wasPolite = "yes";
}
else if (response.farewell == "goaway") {
      wasPolite = "no";
    }
else {
wasPolite = "maybe";
}
});
alert(wasPolite);

控制台显示goaway为响应,但wasPoite仍未定义。

4

1 回答 1

2

如果你定义:

var wasPolite = '';

之前:

chrome.extension....

它仍然没有提醒正确的值然后我会问chrome.extension.sendRequest()函数是异步的吗?如果是这样,您可能会在请求有时间回调之前提醒 wasPolite。@Ruup 可能在轨道上暗示 wasPolite 只有在 sendRequest 实际完成后才会有它的值,从而触发回调

于 2012-06-05T05:14:22.927 回答