我已经从我的内容脚本发送了一个请求,并成功收到了我的后台页面的回复。现在我想在我的内容脚本中设置一个变量 - 基于响应。那就是我遇到麻烦的地方。应该足够简单....我想我必须得到错误的语法。这是我的内容脚本中的内容:
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
仍未定义。
答案 0 :(得分:2)
如果你定义:
var wasPolite = '';
之前:
chrome.extension....
并且它仍然没有提示正确的值然后我会问 chrome.extension.sendRequest()函数是否异步?如果是这样,您可能会在请求有时间回拨之前警告wasPolite。 @Rupup可能在轨道上表明,在sendRequest实际完成后,wasPolite将只有它的值,从而触发回调