我正在发送带有firefox Web扩展的数组browser.tabs.sendMessage()
当我在另一面收到数组时,它是空的。
这是我在background.js上的代码:
function onError(error) {
console.error(`Error: ${error}`);
}
function sendMessageToTabs(tabs) {
for (let tab of tabs) {
browser.tabs.connect(tab.id);
browser.tabs.sendMessage(tab.id, {functionToCall: "GetInputValidBoxes"}).then(response => {
console.log(response.InputBoxes);
});
}
}
function sendMessage(functionToSendTo) {
browser.tabs.query({
currentWindow: true,
active: true
}).then(functionToSendTo).catch(onError);
}
这是content_script.js
browser.runtime.onMessage.addListener(notify);
function notify(data) {
console.log(data)
InputBoxes = JSON.stringify(GetInputValidBoxes());
console.log(InputBoxes)
return Promise.resolve({InputBoxes: InputBoxes});
}