获取选项卡的消息管理器? (Firefox 附加 SDK)

Get message manager of a tab? (Firefox Add-on SDK)

它是一个 Firefox 附加 SDK。

我想将框架脚本加载到给定的浏览器选项卡(符合 e10s)。

目前我尝试为每个选项卡执行此操作(仅用于测试),但未定义消息管理器。为什么?

var self = require("sdk/self");
var { setTimeout} = require ("sdk/timers");
var { viewFor } = require("sdk/view/core");

function myFunc() {
  var tabs = require("sdk/tabs");
  for (let tab of tabs) {
    console.log(tab.title);
    var xulTab = viewFor(tab);
    console.log(xulTab.messageManager);
    console.log(tab.messageManager);
  } 
}

两个log打印出来undefined

我需要 messageManager 对象以便之后调用 loadFrameScript 函数。非常感谢!

问得好。这是 e10s 安全的:

var mm = xulTab.linkedBrowser.messageManager

然后就可以正常使用了,比如:mm.sendAsyncMessage(....)