FF插件中`tabs`和`worker`实体之间有什么样的关系?

时间:2015-09-29 14:34:23

标签: firefox-addon firefox-addon-sdk

我是FF Add-Ons及其SDK的新手,所以我试图弄清楚一些基本概念。 我想澄清的第一件事 - tabs-sdkworkers之间的关系。正如我从文档中获得的 - 每次我通过

将内容脚本附加到选项卡
this.activeWorker = tabs.activeTab.attach({
    contentScript: script
});

我得到worker。但我的问题是:"它是一个全新的worker,与同一个activeTab有关吗?​​"如果是,那是否意味着下一个陈述是正确的?

var firstWorker = tabs.activeTab.attach({
    contentScript: someScript
});

var secondWorker = tabs.activeTab.attach({
    contentScript: someOtherScript
});

var isEqual = (firstWorker === secondWorker); //false

如果它是正确的,那么接下来的问题是:"有没有办法,在标签上而不是在工人上听取消息?"

1 个答案:

答案 0 :(得分:1)

是的,每次调用attach都会给你一个新的独立工作者。

要收听来自每个工作人员的消息,您只需在每次创建回调函数时都通过回调函数。